Replace go-openai with native client
Drop the github.com/sashabaranov/go-openai dependency in favor of an internal HTTP client. The LLM package is now split into: - llm.go: type definitions (Message, ChatRequest, ChatResponse, etc.) - client.go: client construction and configuration - client_completions.go: Completions and CompletionsStream methods - client_models.go: ListModels - client_tools.go: tool call execution CompletionsStream uses typed SSE events (delta, done, message) so the frontend can render progressive streaming output. Move tool.go and tool_test.go from internal/tool/ into internal/llm/ to co-locate the registry with the client that consumes it. Update job.go and service.go to use the new llm.Message types and Completions/CompletionsStream methods. Remove the Voice field from chat request/response (voice is now tracked via message metadata). Frontend: handle delta/done/message SSE events, render a streaming placeholder that receives progressive text deltas, and finalize with full message binding (reasoning, tool calls, actions).
This commit is contained in:
4
vendor/modules.txt
vendored
4
vendor/modules.txt
vendored
@@ -8,11 +8,7 @@ github.com/google/uuid
|
||||
# github.com/robfig/cron/v3 v3.0.1
|
||||
## explicit; go 1.12
|
||||
github.com/robfig/cron/v3
|
||||
# github.com/sashabaranov/go-openai v1.41.2
|
||||
## explicit; go 1.18
|
||||
github.com/sashabaranov/go-openai
|
||||
github.com/sashabaranov/go-openai/internal
|
||||
github.com/sashabaranov/go-openai/jsonschema
|
||||
# golang.org/x/exp/typeparams v0.0.0-20231108232855-2478ac86f678
|
||||
## explicit; go 1.18
|
||||
golang.org/x/exp/typeparams
|
||||
|
||||
Reference in New Issue
Block a user