discourse-ai/spec/lib/completions
Sam 823e8ef490
FEATURE: partial tool call support for OpenAI and Anthropic (#908)
Implement streaming tool call implementation for Anthropic and Open AI.

When calling:

llm.generate(..., partial_tool_calls: true) do ...
Partials may contain ToolCall instances with partial: true, These tool calls are partially populated with json partially parsed.

So for example when performing a search you may get:

ToolCall(..., {search: "hello" })
ToolCall(..., {search: "hello world" })

The library used to parse json is:

https://github.com/dgraham/json-stream

We use a fork cause we need access to the internal buffer.

This prepares internals to perform partial tool calls, but does not implement it yet.
2024-11-14 06:58:24 +11:00
..
dialects FIX: Llm selector / forced tools / search tool (#862) 2024-10-25 06:24:53 +11:00
endpoints FEATURE: partial tool call support for OpenAI and Anthropic (#908) 2024-11-14 06:58:24 +11: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: support Chat with AI Persona via a DM (#488) 2024-05-06 09:49:02 +10:00
prompt_spec.rb FEATURE: Add vision support to AI personas (Claude 3) (#546) 2024-03-27 14:30:11 +11: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 FEATURE: improve tool support (#904) 2024-11-12 08:14:30 +11:00