20 Commits

Author SHA1 Message Date
Zexi Li d4876a18bd fix(aiproxy): remove 30-day limit on custom usage range (#25356)
Allow querying usage statistics over custom date ranges longer than 30 days.
2026-08-17 17:00:14 +08:00
Zexi Li e73506385a feat(aiproxy): encrypt ai_key and virtual_key secrets at rest (#25328)
Store provider secrets and virtual keys encrypted with AES, add hash-based VK lookup, and migrate existing plaintext rows on init.
2026-08-14 14:40:39 +08:00
Zexi Li 24c22d13e3 feat(aiproxy): migrate catalog resources to virtual resource base (#25318)
Give ai providers/models/keys/routing-models project scope with tenant backfill, and pass project/domain on LLM sync upserts.
2026-08-14 10:44:31 +08:00
Zexi Li 17e72d71d9 fix(aiproxy): keep weight=1 keys selectable after health penalty (#25277)
Integer truncation of base*mul/maxScore can yield 0 for weight=1 keys,
permanently excluding them; floor effective weight at 1 when mul > 0.
2026-08-04 20:25:23 +08:00
Zexi Li c2fbb426f6 feat(host): support Hygon DCU HAMI vdev core allocation (#25274) 2026-08-04 10:21:09 +08:00
Zexi Li dab1360311 fix(aiproxy): avoid permanent ai_key blacklist and clarify skip reasons (#25225)
Enter cooldown when health score hits zero so keys can recover, and include concrete skip reasons in resolve errors.
2026-07-27 12:16:12 +08:00
Zexi Li 669fa8009c fix(aiproxy): emit done events before response.completed in stream converter (#25158)
Emit output_item.done, reasoning_summary_part.done, function_call_arguments.done,
and related finalize events for text, reasoning, and tool calls before the
response.completed event to match the Responses API stream contract.
2026-07-16 17:02:18 +08:00
cwz_eikoh ed4a8dc049 feat(llm): add llm-router-agent (#25128) 2026-07-15 15:31:08 +08:00
Zexi Li 068cc8bdbd Automated cherry pick of #25145: feat(aiproxy): support streaming responses for visual messages (#25146)
* feat(aiproxy): support streaming responses for visual messages

* refactor(aiproxy): share API log helpers and support input/output token usage

Extract common chatlog record lifecycle across proxy handlers, and fall back
to Responses/Anthropic usage field aliases when filling token counts.
2026-07-15 10:57:49 +08:00
Zexi Li cdc8ab78b5 feat(aiproxy): move visual provider to model columns and support streaming responses (#25144)
Promote visual_provider_id/visual_model_key to dedicated ai_model columns,
force non-stream upstream orchestration for visual paths, and synthesize SSE
chunks for streaming Responses requests that include images.
2026-07-14 18:39:30 +08:00
Zexi Li 73d7cbbb1f Automated cherry pick of #25132: refactor(aiproxy): rename chat log config to API log with S3 fields (#25141)
* refactor(aiproxy): rename chat log config to API log with S3 fields

* feat(aiproxy): add visual extension for Responses image tools

Wire visual model catalog, orchestration, and OpenAI Responses compat so chat/Codex can invoke image generation and editing tools.
2026-07-14 11:52:58 +08:00
Zexi Li 40b3c82ab4 feat(aiproxy): add Z.AI / Zhipu provider with dual OpenAI and Anthropic API modes (#25131)
Register zhipu as a public OpenAI-compat provider with GLM catalog seeds,
Anthropic passthrough routing, and v4-style base URL path handling.
2026-07-13 11:25:22 +08:00
Zexi Li afde072512 feat(aiproxy): add OpenAI Responses API with provider adapters and Codex support (#25127)
Implement /v1/responses endpoint with multi-provider translation (OpenAI, Azure,
Anthropic, Gemini), streaming compat layers, Codex config/tool integration, and
updated functional test docs.
2026-07-10 16:40:56 +08:00
cwz_eikoh 52d2ddcb45 feat(aiproxy): support log record in aiproxy through minio (#25078) 2026-07-09 13:01:21 +08:00
Zexi Li 167682c39b feat(aiproxy): add Anthropic Messages API and migrate functional tests to Go (#25107)
Add /v1/messages handler with Anthropic-to-OpenAI translation, upstream
failover, and probe endpoints. Replace shell-based functional test scripts
with pkg/aiproxy/ft and climc test commands; consolidate documentation.
2026-07-07 20:13:14 +08:00
Zexi Li 8f1d740b54 feat(llm): async instant model delete and improve import status tracking (#25073)
fix(aiproxy): set OpenAI handler process timeouts and skip upstream error
response when request context is already cancelled.
2026-06-25 19:52:46 +08:00
Zexi Li f69856eeb0 fix(aiproxy): defer stream context cancel until chunks are consumed (#25059) 2026-06-23 14:09:47 +08:00
Zexi Li 4a4b3f8676 feat(llm): sync llm deployment with aiproxy catalog and routing (#25057)
Add auto_register_aiproxy on llm_deployment creation, background sync task,
and register/unregister CLI actions. Link aiproxy providers, routings, and
models to llm replicas via llm_id and llm_deployment_id fields.
2026-06-22 20:14:01 +08:00
cwz_eikoh 108db8ca87 Feature/llm route for aiproxy (#25044)
* feat(aiproxy): support routing model in aiproxy

* feat(llm): add llm-router
2026-06-22 10:09:38 +08:00
屈轩 7c7353cf7b feat(aiproxy): add aiproxy (#24916) 2026-06-09 18:54:42 +08:00