33 lines
982 B
Python
33 lines
982 B
Python
"""ADK agent with vector search RAG tool."""
|
|
|
|
from google.adk.agents.llm_agent import Agent
|
|
from google.adk.runners import Runner
|
|
from google.adk.tools.mcp_tool import McpToolset
|
|
from google.adk.tools.mcp_tool.mcp_session_manager import (
|
|
SseConnectionParams,
|
|
)
|
|
from google.cloud.firestore_v1.async_client import AsyncClient
|
|
from google import genai
|
|
|
|
|
|
from va_agent.session.firestore import FirestoreSessionService
|
|
from va_agent.config import settings
|
|
|
|
connection_params = SseConnectionParams(url=settings.mcp_remote_url)
|
|
toolset = McpToolset(connection_params=connection_params)
|
|
|
|
agent = Agent(
|
|
model=settings.agent_model,
|
|
name=settings.agent_name,
|
|
instruction=settings.agent_instructions,
|
|
tools=[toolset]
|
|
)
|
|
|
|
session_service = FirestoreSessionService(
|
|
db=AsyncClient(database=settings.firestore_db),
|
|
compaction_token_threshold=10_000,
|
|
genai_client=genai.Client()
|
|
)
|
|
|
|
runner = Runner(app_name='va_agent', agent=agent, session_service=session_service)
|