first commit
This commit is contained in:
62
core/providers/cohere/cohere_test.go
Normal file
62
core/providers/cohere/cohere_test.go
Normal file
@@ -0,0 +1,62 @@
|
||||
package cohere_test
|
||||
|
||||
import (
|
||||
"os"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/maximhq/bifrost/core/internal/llmtests"
|
||||
|
||||
"github.com/maximhq/bifrost/core/schemas"
|
||||
)
|
||||
|
||||
func TestCohere(t *testing.T) {
|
||||
t.Parallel()
|
||||
if strings.TrimSpace(os.Getenv("COHERE_API_KEY")) == "" {
|
||||
t.Skip("Skipping Cohere tests because COHERE_API_KEY is not set")
|
||||
}
|
||||
|
||||
client, ctx, cancel, err := llmtests.SetupTest()
|
||||
if err != nil {
|
||||
t.Fatalf("Error initializing test setup: %v", err)
|
||||
}
|
||||
defer cancel()
|
||||
defer client.Shutdown()
|
||||
|
||||
testConfig := llmtests.ComprehensiveTestConfig{
|
||||
Provider: schemas.Cohere,
|
||||
ChatModel: "command-a-03-2025",
|
||||
VisionModel: "command-a-vision-07-2025", // Cohere's latest vision model
|
||||
TextModel: "", // Cohere focuses on chat
|
||||
EmbeddingModel: "embed-v4.0",
|
||||
RerankModel: "rerank-v3.5",
|
||||
ReasoningModel: "command-a-reasoning-08-2025",
|
||||
Scenarios: llmtests.TestScenarios{
|
||||
TextCompletion: false, // Not typical for Cohere
|
||||
SimpleChat: true,
|
||||
CompletionStream: true,
|
||||
MultiTurnConversation: true,
|
||||
ToolCalls: true,
|
||||
ToolCallsStreaming: true,
|
||||
MultipleToolCalls: true,
|
||||
MultipleToolCallsStreaming: true,
|
||||
End2EndToolCalling: true,
|
||||
AutomaticFunctionCall: true, // May not support automatic
|
||||
ImageURL: false, // Supported by c4ai-aya-vision-8b model
|
||||
ImageBase64: true, // Supported by c4ai-aya-vision-8b model
|
||||
MultipleImages: false, // Supported by c4ai-aya-vision-8b model
|
||||
FileBase64: false, // Not supported
|
||||
FileURL: false, // Not supported
|
||||
CompleteEnd2End: false,
|
||||
Embedding: true,
|
||||
Rerank: true,
|
||||
Reasoning: true,
|
||||
ListModels: true,
|
||||
CountTokens: true,
|
||||
},
|
||||
}
|
||||
|
||||
t.Run("CohereTests", func(t *testing.T) {
|
||||
llmtests.RunAllComprehensiveTests(t, client, ctx, testConfig)
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user