Spaces:
Paused
Paused
Commit History
-
feat: add Anthropic Messages API compatibility (/v1/messages)
Implement full Anthropic Messages API translation layer including: - Request/response model types (messages, content blocks, streaming events) - Claude model name resolution to GLM backend models - Streaming (SSE) and non-streaming response conversion - Thinking/reasoning block passthrough - Tool use (tool_call → tool_use) format translation - System prompt, tool_choice, and multi-turn conversation support4f59ab4 -
fix: improve streaming tool_call block detection and add debug logging
Support multiple close markers (</tool_call>, </think>, next <tool_call>) when detecting tool call block boundaries in streaming mode. Add debug logging for stream payload inspection.85aaf7e -
fix: improve tool calling reliability with multi-format parsing and Delta pointer fix
- Enhance system prompt with Chinese instructions and few-shot examples for more reliable <tool_call> output from GLM models - Add fallback parsing for [TOOL]...[/TOOL], [TOOL_CALL]...[/TOOL_CALL], and markdown JSON block formats in prompt injection mode - Change Choice.Delta to *Delta pointer so omitempty correctly omits the field in non-streaming responses (fixes extra "delta":{} in JSON) - Convert tool_calls/tool messages to plain text for upstream z.ai API which doesn't support native tools field - Add comprehensive tests for all new parsing formats and serialization8646505 -
feat: support tool/function calling (OpenAI compatible)
Add tools and tool_choice fields to chat requests, parse upstream tool_call responses, and return them in OpenAI-compatible format with finish_reason=tool_calls. Includes builtin tools, test script, and unit tests.5a55e77
-
refactor: split internal package into domain-based sub-packages
Split the flat internal/ package into auth, config, filter, handler, logger, model, upstream, and version sub-packages by responsibility.48d903a