Skip to content

Commit 2cf3ec8

Browse files
committed
Merge branch 'feat/implement-google-genai-provider' of https://github.com/monotykamary/fast-agent into pr/monotykamary/134-1
2 parents ad7251f + 7eb87c7 commit 2cf3ec8

File tree

11 files changed

+937
-61
lines changed

11 files changed

+937
-61
lines changed

pyproject.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ dependencies = [
3131
"opentelemetry-instrumentation-openai>=0.39.3",
3232
"opentelemetry-instrumentation-anthropic>=0.39.3",
3333
"tensorzero>=2025.4.7",
34+
"google-genai",
35+
"opentelemetry-instrumentation-google-genai>=0.2b0",
3436
]
3537

3638
[project.optional-dependencies]

src/mcp_agent/context.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
from opentelemetry import trace
1212
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
1313
from opentelemetry.instrumentation.anthropic import AnthropicInstrumentor
14+
from opentelemetry.instrumentation.google_genai import GoogleGenAiSdkInstrumentor
1415
from opentelemetry.instrumentation.openai import OpenAIInstrumentor
1516
from opentelemetry.propagate import set_global_textmap
1617
from opentelemetry.sdk.resources import Resource
@@ -111,6 +112,7 @@ async def configure_otel(config: "Settings") -> None:
111112
trace.set_tracer_provider(tracer_provider)
112113
AnthropicInstrumentor().instrument()
113114
OpenAIInstrumentor().instrument()
115+
GoogleGenAiSdkInstrumentor().instrument()
114116

115117

116118
async def configure_logger(config: "Settings") -> None:

src/mcp_agent/llm/model_factory.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,9 @@ class ModelFactory:
8686
"claude-3-opus-20240229": Provider.ANTHROPIC,
8787
"claude-3-opus-latest": Provider.ANTHROPIC,
8888
"deepseek-chat": Provider.DEEPSEEK,
89+
"gemini-2.0-flash": Provider.GOOGLE,
90+
"gemini-2.5-flash-preview-04-17": Provider.GOOGLE,
91+
"gemini-2.5-pro-preview-03-25": Provider.GOOGLE,
8992
# "deepseek-reasoner": Provider.DEEPSEEK, reinstate on release
9093
}
9194

@@ -101,6 +104,9 @@ class ModelFactory:
101104
"opus3": "claude-3-opus-latest",
102105
"deepseekv3": "deepseek-chat",
103106
"deepseek": "deepseek-chat",
107+
"gemini2": "gemini-2.0-flash",
108+
"gemini25": "gemini-2.5-flash-preview-04-17",
109+
"gemini25pro": "gemini-2.5-pro-preview-03-25",
104110
}
105111

106112
# Mapping of providers to their LLM classes

0 commit comments

Comments
 (0)