From ab694a38edd5af96f6e730f9e5048af0ff8e440c Mon Sep 17 00:00:00 2001 From: zephyrq-z <122677241+zephyrq-z@users.noreply.github.com> Date: Tue, 23 Jun 2026 15:22:12 +0800 Subject: [PATCH] feat: add Baidu Qianfan provider and update provider list (#188) --- internal/llm/providers.go | 15 +++++++++++++++ internal/llm/providers_test.go | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/internal/llm/providers.go b/internal/llm/providers.go index abd6a65..1e5f8b9 100644 --- a/internal/llm/providers.go +++ b/internal/llm/providers.go @@ -173,6 +173,21 @@ var registry = []Provider{ "MiniMax-M2.5-highspeed", }, }, + { + Name: "baidu-qianfan", + DisplayName: "Baidu Qianfan API", + Protocol: "openai", + BaseURL: "https://qianfan.baidubce.com/v2", + EnvVar: "QIANFAN_API_KEY", + Models: []string{ + "ernie-5.1", + "ernie-5.0", + "ernie-x1.1", + "ernie-x1-turbo-32k-preview", + "deepseek-v4-pro", + "deepseek-v4-flash", + }, + }, } var registryMap map[string]Provider diff --git a/internal/llm/providers_test.go b/internal/llm/providers_test.go index 09962e3..c4f5e07 100644 --- a/internal/llm/providers_test.go +++ b/internal/llm/providers_test.go @@ -40,7 +40,7 @@ func TestListProviders_Order(t *testing.T) { if len(providers) < 3 { t.Fatalf("expected at least 3 providers, got %d", len(providers)) } - expected := []string{"anthropic", "dashscope", "dashscope-tokenplan", "deepseek", "hy-tokenplan", "kimi", "mimo", "minimax", "openai", "tencent-tokenhub", "volcengine", "z-ai"} + expected := []string{"anthropic", "baidu-qianfan", "dashscope", "dashscope-tokenplan", "deepseek", "hy-tokenplan", "kimi", "mimo", "minimax", "openai", "tencent-tokenhub", "volcengine", "z-ai"} if len(providers) != len(expected) { t.Fatalf("expected %d providers, got %d", len(expected), len(providers)) }