fix: align with accepted structure (agent_app.py)
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
"""Агент с 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,
|
||||
)
|
||||
Reference in New Issue
Block a user