huangxun
c9c59f2490
refactor(toolcall): enhance tool call extraction with multiple keywords and safety limits
...
- Add support for multiple keywords: tool_calls, function.name:, [tool_call_history]
- Add OOM protection with search limits in extractToolCallObjects
- Add max scan length limit in extractJSONObject to prevent OOM on unclosed objects
- Update tool_sieve to handle more tool call patterns
- Add loose JSON repair in parseToolCallPayload for better error recovery
This improves DeepSeek tool call parsing robustness.
2026-03-17 16:28:27 +08:00
huangxun
16216cc2ca
fix(toolcalls): support nested objects in missing array brackets repair
...
- Upgrade missingArrayBracketsPattern regex to support single-level nested {} objects
- This fixes DeepSeek's list hallucination where tool call JSON objects contain nested fields like {"input": {"q": "value"}}
- Add comprehensive test cases covering 2-5 nested objects, mixed nested/primitive fields, and real DeepSeek 8-queen output patterns
- Add RepairLooseJSON function to repair unquoted keys and missing array brackets
Fixes: DeepSeek tool call parsing with nested JSON objects
2026-03-17 16:24:16 +08:00
huangxun
7318d1f4a8
fix(toolcall): fix deepseek function calling bug and add json repair
...
- Fix: Expand stream sieve keywords to support function.name: and [TOOL_CALL_HISTORY]
- Fix: Add repairInvalidJSONBackslashes to handle unescaped backslashes in Windows paths
- Sync: Update JS stream sieve to match Go implementation
- Test: Add unit tests for backslash repair and deepseek format parsing
- Tool: Move repair json test tool to tests/repair_json_tool.go
2026-03-13 13:47:40 +08:00
CJACK.
12d5f136d5
fix(toolcall): pass gates and align go/js multi-layer parser
2026-03-09 19:16:28 +08:00
CJACK.
ea4bd1e483
fix: parse invoke/tool_call arguments in xml compatibility paths
2026-03-08 13:16:12 +08:00
CJACK.
286d266723
Revert "Resolve PR #82 merge conflicts and restore tool-call parsing (invoke/argument and XML arguments)"
2026-03-08 02:38:29 +08:00
CJACK.
11b2f24fc2
Merge origin/dev into PR branch and resolve toolcall parser conflicts
2026-03-08 02:30:12 +08:00
CJACK.
60e9d707d4
Merge origin/dev into PR branch and resolve toolcall test conflicts
2026-03-08 01:10:53 +08:00
CJACK.
9b93badb57
Harden markup tag parsing to avoid mismatched-tag false positives
2026-03-08 00:55:32 +08:00
CJACK.
892213071a
Align Go/JS tool-call parsing semantics and compat fixtures
2026-03-08 00:12:43 +08:00
CJACK.
a6aa4a1839
补充工具调用行为说明并修正测试文档过时命令
2026-03-03 00:39:02 +08:00
BigUncle
255feb2e65
fix(claude): 修复工具调用兼容与解析回退
...
- Claude 工具定义兼容 input_schema 与 function.parameters
- tool_calls 解析增加 thinking 回退与大小写无关工具名匹配
- 补充 claude/util 相关回归测试
2026-02-25 18:03:25 +08:00
CJACK
a9403c5392
feat: add Gemini API compatibility, refactor stream rendering, and enhance tool call handling and configuration options
2026-02-22 20:53:42 +08:00
CJACK
ae7dce0b32
feat: Improve OpenAI tool call handling by passing unknown tool calls as content and filtering streamed tool calls by schema.
2026-02-22 19:33:52 +08:00
CJACK
6c48429b90
feat: Implement DeepSeek integration, refactor model adapters for streaming and tool calls, enhance admin and account management, and introduce new UI features for settings, API testing, and Vercel sync.
2026-02-22 17:25:48 +08:00
CJACK
7307a5cc9a
feat: Implement admin settings UI, enhance admin authentication with password hashing, and add new streaming runtime logic for Claude and OpenAI adapters with extensive compatibility tests.
2026-02-19 02:45:38 +08:00
CJACK
d21aedac83
feat: Hide raw tool call JSON from output_text in OpenAI-style responses when structured tool calls are present.
2026-02-19 00:28:44 +08:00
CJACK
51c543631b
refactor: Extract OpenAI streaming response payload construction into dedicated utility functions.
2026-02-18 23:40:34 +08:00
CJACK
895423852f
refactor: extract Claude and OpenAI response rendering into new util/render package
2026-02-18 23:35:37 +08:00
CJACK
eb253a9d3a
feat: Introduce standard request normalization and response building for OpenAI and Claude, enhance tool call streaming, and improve caller identification.
2026-02-18 23:35:17 +08:00
CJACK
3a75b75ae0
feat: Introduce model alias resolution, enhanced configuration options, and improved OpenAI/Claude adapter handling for responses, embeddings, and tool calls.
2026-02-18 23:06:18 +08:00
CJACK
f2b10992cc
test: Introduce comprehensive edge case tests for various internal packages including SSE, Claude, Auth, Account, Config, Deepseek, Admin, and Util.
2026-02-18 16:52:16 +08:00
CJACK
deec72416e
test: Introduce comprehensive edge case tests across multiple modules and refine tool call and OpenAI handler logic.
2026-02-18 16:51:30 +08:00
CJACK
7beeea5779
feat: Implement streaming incremental tool call deltas with a new tool sieve and standalone parser.
2026-02-18 16:10:35 +08:00
CJACK
19289c9008
refactor: Modularize OpenAI message normalization and prompt building, enhancing MessagesPrepare to support additional content types and tool call formatting.
2026-02-18 00:54:54 +08:00
CJACK
7dcddef91f
feat: Update Claude model names and IDs across configuration, documentation, and tests, including the default model and thinking delta logic.
2026-02-17 13:36:19 +08:00
CJACK
2cde0a1d84
refactor: Enhance WASM POW solver with channel-based pooling and configurable size, update token estimation, and fix CORS origin reflection.
2026-02-17 03:34:48 +08:00
CJACK
534fd1d14b
feat: centralize utility functions, abstract SSE stream collection, and add concurrency to admin account testing.
2026-02-17 03:31:19 +08:00
CJACK
63ee2e41c2
feat: implement strict-client compatible streaming tool calls with index and add Vercel build troubleshooting guide.
2026-02-16 17:58:40 +08:00
CJACK
ac57cabc80
feat: Intercept and format tool calls, including unknown ones, from model responses in the OpenAI adapter, preventing raw JSON leaks and improving stream finalization.
2026-02-16 16:24:21 +08:00
CJACK
57f2041edb
feat: enhance tool call parsing robustness, authentication flexibility, and streaming output for tool content
2026-02-16 01:24:52 +08:00
CJACK
a50e2ef5cd
feat: Introduce a new Go-based DeepSeek API proxy with adapters for Claude and OpenAI, including SSE parsing and updated build configurations.
2026-02-15 19:50:26 +08:00