Final_Assignment_Template / langchain_agent.py
Romain Fayoux
Test langchain agent
f087af6
raw
history blame
1.57 kB
import os
from dotenv import load_dotenv
from gradio.external import load_blocks_from_huggingface
from langchain.agents import create_agent
from langchain_community.tools.ddg_search.tool import DuckDuckGoSearchResults
from langgraph.checkpoint.memory import InMemorySaver
from langchain_community.tools import DuckDuckGoSearchRun
from google.ai.generativelanguage_v1beta.types import Tool as GenAITool
from langchain.messages import HumanMessage, AIMessage, SystemMessage
from numpy import load
load_dotenv()
os.environ["GOOGLE_API_KEY"] = os.getenv("GEMINI_API_KEY")
system_prompt = """finish your answer with the following template: FINAL ANSWER: [YOUR FINAL ANSWER].
YOUR FINAL ANSWER should be a number OR as few words as possible OR a comma separated list of numbers and/or strings.
If you are asked for a number, don't use comma to write your number neither use units such as $ or percent sign unless specified otherwise.
If you are asked for a string, don't use articles, neither abbreviations (e.g. for cities), and write the digits in plain text unless specified otherwise.
If you are asked for a comma separated list, apply the above rules depending of whether the element to be put in the list is a number or a string."""
agent = create_agent(
model="google_genai:gemini-2.5-flash",
tools=[DuckDuckGoSearchRun()],
system_prompt=system_prompt,
checkpointer=InMemorySaver(),
)
response = agent.invoke(
{"messages": [{"role": "user", "content": "what is the weather in sf"}]},
{"configurable": {"thread_id": "1"}},
)
print(response)