Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions payloads/cases/models.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,5 @@ export const BEDROCK_ANTHROPIC_MODEL =
"us.anthropic.claude-haiku-4-5-20251001-v1:0";
export const VERTEX_ANTHROPIC_MODEL =
"publishers/anthropic/models/claude-haiku-4-5";
export const VERTEX_GOOGLE_MODEL =
"publishers/google/models/gemini-2.5-flash-lite";
40 changes: 40 additions & 0 deletions payloads/cases/params.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import {
ANTHROPIC_OPUS_MODEL,
GOOGLE_GEMINI_3_MODEL,
GOOGLE_IMAGE_MODEL,
VERTEX_GOOGLE_MODEL,
} from "./models";

// OpenAI Responses API and Chat Completions API parameter test cases
Expand Down Expand Up @@ -108,6 +109,15 @@ export const paramsCases: TestCaseCollection = {
responseMimeType: "application/json",
},
},
"vertex-google": {
model: VERTEX_GOOGLE_MODEL,
contents: [
{ role: "user", parts: [{ text: 'Return {"status": "ok"} as JSON.' }] },
],
generationConfig: {
responseMimeType: "application/json",
},
},
bedrock: null,
},

Expand Down Expand Up @@ -190,6 +200,21 @@ export const paramsCases: TestCaseCollection = {
},
},
},
"vertex-google": {
model: VERTEX_GOOGLE_MODEL,
contents: [{ role: "user", parts: [{ text: "Extract: John is 25." }] }],
generationConfig: {
responseMimeType: "application/json",
responseJsonSchema: {
type: "object",
properties: {
name: { type: "string" },
age: { type: "number" },
},
required: ["name", "age"],
},
},
},
bedrock: null,
},

Expand Down Expand Up @@ -274,6 +299,21 @@ export const paramsCases: TestCaseCollection = {
},
},
},
"vertex-google": {
model: VERTEX_GOOGLE_MODEL,
contents: [{ role: "user", parts: [{ text: "Extract: John is 25." }] }],
generationConfig: {
responseMimeType: "application/json",
responseJsonSchema: {
type: "object",
properties: {
name: { type: "string" },
age: { type: "number" },
},
required: ["name", "age"],
},
},
},
bedrock: null,
},

Expand Down
72 changes: 72 additions & 0 deletions payloads/cases/simple.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {
BEDROCK_MODEL,
BEDROCK_ANTHROPIC_MODEL,
VERTEX_ANTHROPIC_MODEL,
VERTEX_GOOGLE_MODEL,
} from "./models";

// Simple test cases - basic functionality testing
Expand Down Expand Up @@ -86,6 +87,16 @@ export const simpleCases: TestCaseCollection = {
},
],
},

"vertex-google": {
model: VERTEX_GOOGLE_MODEL,
contents: [
{
role: "user",
parts: [{ text: "What is the capital of France?" }],
},
],
},
},

reasoningRequest: {
Expand Down Expand Up @@ -173,6 +184,20 @@ export const simpleCases: TestCaseCollection = {
},
],
},

"vertex-google": {
model: VERTEX_GOOGLE_MODEL,
contents: [
{
role: "user",
parts: [
{
text: "Solve this step by step: If a train travels 60 mph for 2 hours, then 80 mph for 1 hour, what's the average speed?",
},
],
},
],
},
},

reasoningRequestTruncated: {
Expand Down Expand Up @@ -268,6 +293,23 @@ export const simpleCases: TestCaseCollection = {
},
],
},

"vertex-google": {
model: VERTEX_GOOGLE_MODEL,
contents: [
{
role: "user",
parts: [
{
text: "Solve this step by step: If a train travels 60 mph for 2 hours, then 80 mph for 1 hour, what's the average speed?",
},
],
},
],
generationConfig: {
maxOutputTokens: 100,
},
},
},

toolCallRequest: {
Expand Down Expand Up @@ -469,5 +511,35 @@ export const simpleCases: TestCaseCollection = {
},
],
},

"vertex-google": {
model: VERTEX_GOOGLE_MODEL,
contents: [
{
role: "user",
parts: [{ text: "What's the weather like in San Francisco?" }],
},
],
tools: [
{
functionDeclarations: [
{
name: "get_weather",
description: "Get the current weather for a location",
parameters: {
type: Type.OBJECT,
properties: {
location: {
type: Type.STRING,
description: "The city and state, e.g. San Francisco, CA",
},
},
required: ["location"],
},
},
],
},
],
},
},
};
2 changes: 2 additions & 0 deletions payloads/cases/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ export interface TestCase {
bedrock: BedrockConverseRequest | null;
"bedrock-anthropic"?: AnthropicMessageCreateParams | null;
"vertex-anthropic"?: AnthropicMessageCreateParams | null;
"vertex-google"?: GoogleGenerateContentRequest | null;
// Optional expectations for proxy compatibility tests
expect?: TestExpectation;
}
Expand All @@ -67,4 +68,5 @@ export const PROVIDER_TYPES = [
"bedrock",
"bedrock-anthropic",
"vertex-anthropic",
"vertex-google",
] as const;
2 changes: 2 additions & 0 deletions payloads/scripts/capture.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import { googleExecutor } from "./providers/google";
import { bedrockExecutor } from "./providers/bedrock";
import { bedrockAnthropicExecutor } from "./providers/bedrock-anthropic";
import { vertexAnthropicExecutor } from "./providers/vertex-anthropic";
import { vertexGoogleExecutor } from "./providers/vertex-google";
import { type ProviderExecutor } from "./types";

// Update provider names to be more descriptive
Expand All @@ -25,6 +26,7 @@ const allProviders = [
bedrockExecutor,
bedrockAnthropicExecutor,
vertexAnthropicExecutor,
vertexGoogleExecutor,
] as const;

interface CaptureOptions {
Expand Down
Loading
Loading