mirror of
https://ghfast.top/https://github.com/discourse/discourse-ai.git
synced 2026-07-16 11:36:23 +08:00
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.
|
||
|---|---|---|
| .. | ||
| anthropic.rb | ||
| aws_bedrock.rb | ||
| base.rb | ||
| canned_response.rb | ||
| cohere.rb | ||
| fake.rb | ||
| gemini.rb | ||
| hugging_face.rb | ||
| ollama.rb | ||
| open_ai.rb | ||
| samba_nova.rb | ||
| vllm.rb | ||