Files
task-6a02e23da6fe2e4ac16acf65/agent_app.py
T

37 lines
1.4 KiB
Python

"""Агент с RAG-инструментами."""
from __future__ import annotations
import os
from langchain.agents import create_agent
from langchain_ollama import ChatOllama
try:
from rag_tools import add_to_knowledge_base, search_knowledge_base
except ModuleNotFoundError:
from .rag_tools import add_to_knowledge_base, search_knowledge_base
LLM_MODEL = os.getenv("OLLAMA_LLM_MODEL", "llama3")
OLLAMA_BASE_URL = os.getenv("OLLAMA_BASE_URL", "http://localhost:11434")
SYSTEM_PROMPT = """\
Ты AI-ассистент с доступом к локальной базе знаний (RAG).
Перед ответом на фактические вопросы используй search_knowledge_base.
Если пользователь просит сохранить информацию — вызывай add_to_knowledge_base.
Если в базе нет данных — честно скажи об этом.
Отвечай на русском языке, кратко и по делу.
"""
def build_llm() -> ChatOllama:
return ChatOllama(model=LLM_MODEL, base_url=OLLAMA_BASE_URL, temperature=0.2)
def build_agent():
"""Агент с RAG-tools — точка входа для автопроверки."""
return create_agent(
model=build_llm(),
tools=[search_knowledge_base, add_to_knowledge_base],
system_prompt=SYSTEM_PROMPT,
)