File tree Expand file tree Collapse file tree 1 file changed +71
-0
lines changed
Expand file tree Collapse file tree 1 file changed +71
-0
lines changed Original file line number Diff line number Diff line change @@ -311,6 +311,77 @@ class CompanySchema < RubyLLM::Schema
311311 PersonSchema .new
312312 end
313313end
314+
315+ schema = CompanySchema .new
316+ schema.to_json_schema
317+ # =>
318+ # {
319+ # "name":"CompanySchema",
320+ # "description":"nil",
321+ # "schema":{
322+ # "type":"object",
323+ # "properties":{
324+ # "ceo":{
325+ # "type":"object",
326+ # "properties":{
327+ # "name":{
328+ # "type":"string"
329+ # },
330+ # "age":{
331+ # "type":"integer"
332+ # }
333+ # },
334+ # "required":[
335+ # :"name",
336+ # :"age"
337+ # ],
338+ # "additionalProperties":false
339+ # },
340+ # "employees":{
341+ # "type":"array",
342+ # "items":{
343+ # "type":"object",
344+ # "properties":{
345+ # "name":{
346+ # "type":"string"
347+ # },
348+ # "age":{
349+ # "type":"integer"
350+ # }
351+ # },
352+ # "required":[
353+ # :"name",
354+ # :"age"
355+ # ],
356+ # "additionalProperties":false
357+ # }
358+ # },
359+ # "founder":{
360+ # "type":"object",
361+ # "properties":{
362+ # "name":{
363+ # "type":"string"
364+ # },
365+ # "age":{
366+ # "type":"integer"
367+ # }
368+ # },
369+ # "required":[
370+ # :"name",
371+ # :"age"
372+ # ],
373+ # "additionalProperties":false
374+ # }
375+ # },
376+ # "required":[
377+ # :"ceo",
378+ # :"employees",
379+ # :"founder"
380+ # ],
381+ # "additionalProperties":false,
382+ # "strict":true
383+ # }
384+ # }
314385```
315386
316387## JSON Output
You can’t perform that action at this time.
0 commit comments