Repository navigation
feat(agent): add Deepgram Think provider - #137
Conversation
Generated by Fern CLI Version: unknown Generators: - fernapi/fern-java-sdk: 4.23.1
dg-coreylweathers
left a comment
There was a problem hiding this comment.
Nice one Greg. This lets Java folks use think-fast and phonellm-mini-alpha-2-fp8 as the Voice Agent think provider, and existing OpenAI/Anthropic/Google/Groq/Bedrock setups and custom Visitor classes keep compiling.
What I checked:
- Full build + 168 unit tests in Docker: all pass.
- Old-style Visitor still compiles, and Deepgram falls through to
_visitUnknown. Only additions to the public API, so already-compiled code is fine too. - Hand-parsed JSON for all five existing providers through the union: each still lands on its own variant.
- Every earlier patch is still in place; .fernignore and AGENTS.md only gained lines.
- Live on prod with the SDK from this branch: both models applied settings and answered. think-fast + mip_opt_out gets INVALID_SETTINGS as documented, plain
phonellm-mini-alpha-2gets "model not available". Staging doesn't have either model yet. - 0.11.4 patch bump matches the release-please config.
Approving the content, but please hold the merge until docs #1335 and #1329 land and this is regenerated from main:
DeepgramReasoningMode isn't frozen, and its name comes from the clashing Deepgram title. With #1335 the regen produces DeepgramThinkProviderReasoningMode and deletes DeepgramReasoningMode, so the frozen DeepgramThinkProvider either won't compile or changes its reasoningMode(...) type, which breaks anyone on 0.11.4. Regenerating from merged main should let most of the hand patch go (the Visitor default method stays). Python #821 has the same enum name.
Small stuff:
- AgentV1ThinkLiveWireTest.java:20-21 imports
Deepgram/DeepgramModelbut never uses them, and line 25 is out of order. - AGENTS.md:54 says keep the default method "until Fern generates it". Fern won't generate a default, so I'd say "until the next major" and add the .bak swap note like the SpeakV2ConfigureFailureCode entry.
- A quick test that parses the existing providers' JSON through ThinkSettingsV1Provider would lock in the union behavior.
Feature
Adds the Deepgram Think provider for Voice Agent settings. Existing provider configurations continue to compile and run unchanged. Release Please should cut patch release 0.11.4.
Regeneration
Regenerated the Java SDK with Fern 4.23.1 from deepgram-docs PR #1329.
Validation