discourse-ai/spec/lib/completions
Roman Rizzi ff2e18f9ca
FIX: Structured output discrepancies. (#1340)
This change fixes two bugs and adds a safeguard.

The first issue is that the schema Gemini expected differed from the one sent, resulting in 400 errors when performing completions.

The second issue was that creating a new persona won't define a method
for `response_format`. This has to be explicitly defined when we wrap it inside the Persona class. Also, There was a mismatch between the default value and what we stored in the DB. Some parts of the code expected symbols as keys and others as strings.

Finally, we add a safeguard when, even if asked to, the model refuses to reply with a valid JSON. In this case, we are making a best-effort to recover and stream the raw response.
2025-05-15 11:32:10 -03:00
..
dialects DEV: use a proper object for tool definition (#1337) 2025-05-15 17:32:39 +10:00
endpoints FIX: Structured output discrepancies. (#1340) 2025-05-15 11:32:10 -03:00
anthropic_message_processor_spec.rb FEATURE: implement thinking token support (#1155) 2025-03-04 12:22:30 +11:00
cancel_manager_spec.rb FEATURE: forum researcher persona for deep research (#1313) 2025-05-14 12:36:16 +10:00
json_stream_decoder_spec.rb FEATURE: improve tool support (#904) 2024-11-12 08:14:30 +11:00
llm_spec.rb FEATURE: better logging for automation reports (#853) 2024-10-23 16:49:56 +11:00
prompt_messages_builder_spec.rb FEATURE: add OpenAI image generation and editing capabilities (#1293) 2025-04-29 17:38:54 +10:00
prompt_spec.rb FEATURE: flexible image handling within messages (#1214) 2025-03-31 12:39:07 -03:00
structured_output_spec.rb FIX: Structured output discrepancies. (#1340) 2025-05-15 11:32:10 -03:00
tool_definition_spec.rb DEV: use a proper object for tool definition (#1337) 2025-05-15 17:32:39 +10:00
upload_encoder_spec.rb FEATURE: enforce jpg/png for all images (#1309) 2025-05-05 17:46:37 +10:00
xml_tag_stripper_spec.rb FIX: display search correctly, bug when stripping XML (#668) 2024-06-14 15:28:40 +10:00
xml_tool_processor_spec.rb DEV: use a proper object for tool definition (#1337) 2025-05-15 17:32:39 +10:00