Skip to content

Conversation

andrewheard
Copy link
Contributor

@andrewheard andrewheard commented Aug 7, 2025

Added parsing for promptTokensDetails and candidatesTokensDetails when using the Gemini Developer API (Google AI). This PR updates developer/api.dart (Google AI) to use parseUsageMetadata from api.dart (Vertex AI) since the implementations should be identical.

Note: This is a follow-up to #17608.

Checklist

Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]).
This will ensure a smooth and quick review process. Updating the pubspec.yaml and changelogs is not required.

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
  • All existing and new tests are passing.
  • I updated/added relevant documentation (doc comments with ///).
  • The analyzer (melos analyze-ci) does not report any problems on my PR.
  • I read and followed the Flutter Style Guide.
  • I signed the CLA.
  • I am willing to follow-up on review comments in a timely manner.

Breaking Change

Does your PR require plugin users to manually update their apps to accommodate your change?

  • Yes, this is a breaking change.
  • No, this is not a breaking change.

google-labs-jules bot and others added 4 commits August 7, 2025 20:11
- Added `thoughtsTokenCount` to `_parseUsageMetadata` in `packages/firebase_ai/firebase_ai/lib/src/api.dart` to align with the implementation in the developer API.
- Added unit tests for `thoughtsTokenCount` parsing in `packages/firebase_ai/firebase_ai/test/api_test.dart`.
@andrewheard andrewheard added the plugin: ai label issues for firebase_ai plugin label Aug 7, 2025
@andrewheard andrewheard marked this pull request as ready for review August 7, 2025 22:14
@andrewheard andrewheard force-pushed the feat-parse-usage-metadata-details branch from 258612b to 917f432 Compare August 7, 2025 22:43
@andrewheard andrewheard changed the base branch from main to ah/add-thoughts-token-count August 7, 2025 22:44
Base automatically changed from ah/add-thoughts-token-count to main August 8, 2025 18:13
@cynthiajoan cynthiajoan merged commit 4bab0b3 into main Aug 26, 2025
26 of 30 checks passed
@cynthiajoan cynthiajoan deleted the feat-parse-usage-metadata-details branch August 26, 2025 17:08
sybrands-place pushed a commit to sybrands-place/flutterfire that referenced this pull request Aug 27, 2025
* main: (31 commits)
  making sure vertex instance will differentiate with location (firebase#17664)
  fix(firebaseai): Added token details parsing for Dev API (firebase#17609)
  feat(firebaseai): add thinking feature (firebase#17652)
  feat(firebaseai): Add app check limited use token (firebase#17645)
  fix(firebaseai): remove candidateCount from LiveGenerationConfig since the connection fails silently when it is set (firebase#17647)
  fix(firebaseai): Export `UnknownPart` (firebase#17655)
  fix(firebase_ai): Add `GroundingMetadata` parsing for Developer API (firebase#17657)
  fix(app_check, iOS): correctly parse `forceRefresh` argument using `boolValue` (firebase#17627)
  feat(firebaseai): imagen editing (firebase#17556)
  feat(firebaseai): add responseJsonSchema to GenerationConfig (firebase#17564)
  chore(firebaseai): fix error message test failure (firebase#17644)
  ci(apple): fix CI runners with explicit Xcode version (firebase#17634)
  chore(firebaseai): Minor fix for error message wording (firebase#17639)
  chore: fix warnings after latest flutter version (firebase#17640)
  Update CHANGELOG.md, put live api entry back for the official announcment (firebase#17635)
  fix(ci): ignore .gradle files in license check (firebase#17625)
  Remove `generateContent` call from count tokens page (firebase#17613)
  Update CHANGELOG.md (firebase#17621)
  Update CONTRIBUTING.md to add API change rule (firebase#17619)
  chore(release): publish packages (firebase#17618)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
plugin: ai label issues for firebase_ai plugin
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants