diff --git a/tools.py b/tools.py index c4373f9..3c21352 100644 --- a/tools.py +++ b/tools.py @@ -2,6 +2,11 @@ from langchain.tools import tool from langchain_chroma import Chroma from langchain_ollama import OllamaEmbeddings from langchain_tavily import TavilySearchResults +import os +from dotenv import load_dotenv + +# Загружаем переменные окружения из .env +load_dotenv() @tool def search_local_kb(query: str, top_k: int = 3) -> str: @@ -16,6 +21,9 @@ def search_local_kb(query: str, top_k: int = 3) -> str: @tool def web_search(query: str) -> str: """Поиск в интернете через Tavily.""" - search = TavilySearchResults() + tavily_api_key = os.getenv("TAVILY_API_KEY") + if not tavily_api_key: + raise ValueError("Требуется переменная окружения TAVILY_API_KEY") + search = TavilySearchResults(tavily_api_key=tavily_api_key) results = search.run(query) return "\n\n".join([result.get("content", "") for result in results]) \ No newline at end of file