Skip to content

feat(genai): add migrated functionCallingStreamContent sample from generative-ai#4367

Open
angelcaamal wants to merge 3 commits into
mainfrom
feat/genai-tool-func-calling-stream-content
Open

feat(genai): add migrated functionCallingStreamContent sample from generative-ai#4367
angelcaamal wants to merge 3 commits into
mainfrom
feat/genai-tool-func-calling-stream-content

Conversation

@angelcaamal

@angelcaamal angelcaamal commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Description

This PR introduces tool-func-calling-stream-content.js, which is the version already migrated from Vertex AI to the new genai standard, applying the proper name change and region tag following the naming convention of the samples under genai.

The primary reason for this migration is to phase out the legacy functionCallingStreamContent.js sample and decommission its old region tag on Devsite, replacing it with this updated implementation.

Fixes #

Note: Before submitting a pull request, please open an issue for discussion if you are not associated with Google.

Checklist

  • I have followed guidelines from CONTRIBUTING.MD and Samples Style Guide
  • Tests pass: npm test (see Testing)
  • Lint pass: npm run lint (see Style)
  • Required CI tests pass (see CI testing)
  • These samples need a new API enabled in testing projects to pass (let us know which ones)
  • These samples need a new/updated env vars in testing projects set to pass (let us know which ones)
  • This pull request is from a branch created directly off of GoogleCloudPlatform/nodejs-docs-samples. Not a fork.
  • This sample adds a new sample directory, and I updated the CODEOWNERS file with the codeowners for this sample
  • This sample adds a new sample directory, and I created GitHub Actions workflow for this sample
  • This sample adds a new Product API, and I updated the Blunderbuss issue/PR auto-assigner with the codeowners for this sample
  • Please merge this PR for me once it is approved

Note: Any check with (dev), (experimental), or (legacy) can be ignored and should not block your PR from merging (see CI testing).

@product-auto-label product-auto-label Bot added the samples Issues that are directly related to samples. label Jun 26, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new sample script and its corresponding test file to demonstrate function calling with streaming content using the @google/genai SDK. The review feedback highlights critical corrections and improvements: the role for the function response turn must be changed from 'user' to 'tool' to prevent API validation errors, and redundant nesting in the function response structure should be simplified. Additionally, the test file should default to 'us-central1' instead of 'global' since Gemini models are regional on Vertex AI, and the script path in the test should be resolved dynamically using the path module to ensure directory-independent execution.

Comment thread genai/tools/tools-func-calling-stream-content.js
Comment thread genai/tools/tools-func-calling-stream-content.js
Comment thread genai/tools/test/tools-func-calling-stream-content.test.js
Comment thread genai/tools/test/tools-func-calling-stream-content.test.js
Comment thread genai/tools/test/tools-func-calling-stream-content.test.js
@angelcaamal angelcaamal marked this pull request as ready for review June 26, 2026 21:45
@angelcaamal angelcaamal requested review from a team as code owners June 26, 2026 21:45
@snippet-bot

snippet-bot Bot commented Jun 26, 2026

Copy link
Copy Markdown

Here is the summary of changes.

You are about to add 1 region tag.

This comment is generated by snippet-bot.
If you find problems with this result, please file an issue at:
https://github.com/googleapis/repo-automation-bots/issues.
To update this comment, add snippet-bot:force-run label or use the checkbox below:

  • Refresh this comment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

samples Issues that are directly related to samples.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant