Skip to content
Open
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: 1 addition & 1 deletion e2e/smoke-tests/sample-apps/modular.js
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ function callPerformance(app) {
async function callAI(app) {
console.log('[AI] start');
const ai = getAI(app, { backend: new VertexAIBackend() });
const model = getGenerativeModel(ai, { model: 'gemini-2.5-flash' });
const model = getGenerativeModel(ai, { model: 'gemini-3.5-flash' });
const result = await model.countTokens('abcdefg');
console.log(`[AI] counted tokens: ${result.totalTokens}`);
}
Expand Down
4 changes: 2 additions & 2 deletions e2e/smoke-tests/tests/modular.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -314,8 +314,8 @@ describe('MODULAR', () => {
ai = getAI(app, { backend: new VertexAIBackend() });
});
it('getGenerativeModel()', async () => {
const model = getGenerativeModel(ai, { model: 'gemini-2.5-flash' });
expect(model.model).toMatch(/gemini-2.5-flash$/);
const model = getGenerativeModel(ai, { model: 'gemini-3.5-flash' });
expect(model.model).toMatch(/gemini-3.5-flash$/);
});
});

Expand Down
4 changes: 2 additions & 2 deletions packages/ai/integration/chat.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,15 +97,15 @@ describe('Chat Session', function () {
expect(history[3].role).to.equal('model');
expect(history[3].parts[0].text?.toLowerCase()).to.include('rome');

if (model.model.includes('gemini-2.5-flash')) {
if (model.model.includes('gemini-3.5-flash')) {
// Token counts can vary slightly in chat context
expect(response1.usageMetadata!.promptTokenCount).to.not.equal(0);
expect(response1.usageMetadata!.candidatesTokenCount).to.not.equal(0);
expect(response1.usageMetadata!.totalTokenCount).to.not.equal(0);
expect(response2.usageMetadata!.promptTokenCount).to.not.equal(0);
expect(response2.usageMetadata!.candidatesTokenCount).to.not.equal(0);
expect(response2.usageMetadata!.totalTokenCount).to.not.equal(0);
} else if (model.model.includes('gemini-2.0-flash')) {
} else if (model.model.includes('gemini-3.1-flash-lite')) {
expect(response1.usageMetadata).to.not.be.null;
// Token counts can vary slightly in chat context
expect(response1.usageMetadata!.promptTokenCount).to.not.equal(0);
Expand Down
18 changes: 6 additions & 12 deletions packages/ai/integration/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -62,16 +62,13 @@ const backendNames: Map<BackendType, string> = new Map([
]);

const modelNames: readonly string[] = [
'gemini-2.0-flash-001',
'gemini-2.0-flash-lite-001',
'gemini-2.5-flash',
'gemini-2.5-flash-lite',
'gemini-2.5-pro',
'gemini-3-pro-preview'
'gemini-3.1-flash-lite',
'gemini-3.5-flash',
'gemini-3.1-pro-preview'
];

// Used for testing non-AI behavior (e.g. Network requests). Configured to minimize cost.
export const cheapestModel = 'gemini-2.0-flash';
export const cheapestModel = 'gemini-3.1-flash-lite';
export const defaultAIInstance = getAI(app, { backend: new VertexAIBackend() });
export const defaultGenerativeModel = getGenerativeModel(defaultAIInstance, {
model: cheapestModel,
Expand All @@ -82,11 +79,8 @@ export const defaultGenerativeModel = getGenerativeModel(defaultAIInstance, {

// The Live API requires a different set of models, and they're different for each backend.
const liveModelNames: Map<BackendType, string[]> = new Map([
[BackendType.GOOGLE_AI, ['gemini-2.5-flash-native-audio-preview-09-2025']],
[
BackendType.VERTEX_AI,
['gemini-live-2.5-flash-preview-native-audio-09-2025']
]
[BackendType.GOOGLE_AI, ['gemini-3.1-flash-live-preview']],
[BackendType.VERTEX_AI, ['gemini-3.1-flash-live-preview']]
]);

/**
Expand Down
4 changes: 2 additions & 2 deletions packages/ai/integration/generate-content.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ describe('Generate Content', function () {

expect(response.usageMetadata).to.not.be.null;

if (model.model.includes('gemini-2.5-flash')) {
if (model.model.includes('gemini-3.5-flash')) {
expect(response.usageMetadata!.promptTokenCount).to.not.equal(0);
expect(response.usageMetadata!.candidatesTokenCount).to.not.equal(0);
expect(response.usageMetadata!.thoughtsTokenCount).to.not.equal(0);
Expand All @@ -115,7 +115,7 @@ describe('Generate Content', function () {
).to.not.equal(0);

// candidatesTokenDetails comes back about half the time, so let's just not test it.
} else if (model.model.includes('gemini-2.0-flash')) {
} else if (model.model.includes('gemini-3.1-flash-lite')) {
expect(response.usageMetadata!.promptTokenCount).to.not.equal(0);
expect(response.usageMetadata!.candidatesTokenCount).to.not.equal(0);
expect(response.usageMetadata!.totalTokenCount).to.not.equal(0);
Expand Down
2 changes: 1 addition & 1 deletion packages/ai/src/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,4 @@ export const DEFAULT_FETCH_TIMEOUT_MS = 180 * 1000;
/**
* Defines the name of the default in-cloud model to use for hybrid inference.
*/
export const DEFAULT_HYBRID_IN_CLOUD_MODEL = 'gemini-2.5-flash-lite';
export const DEFAULT_HYBRID_IN_CLOUD_MODEL = 'gemini-3.1-flash-lite';
Loading