Більшість розробників вважають, що власний AI агент — це дорого, складно і вимагає хмарних API за сотні доларів на місяць. Насправді у 2026 році можна запустити повноцінного агента прямо на своєму ноутбуці, використовуючи безкоштовні інструменти та відкриті моделі. Цей туторіал покаже, як за 2-3 години зібрати агента, який читає файли, шукає інформацію та виконує багатокрокові задачі — без жодної хмарної підписки. Потрібен комп’ютер з 16 ГБ RAM (8 ГБ — мінімум для маленьких моделей) та базове розуміння командного рядка.
🛠️ Що знадобиться
- Ollama — безкоштовний рушій для запуску LLM локально; завантажує та запускає моделі однією командою, без GPU обов’язково
- Python 3.11+ — мова для написання логіки агента; безкоштовно, вже є на більшості машин
- LangChain або LlamaIndex — безкоштовні фреймворки для побудови агентів; дають готові інструменти для пам’яті, ланцюгів і викликів функцій
- Mistral 7B або Llama 3.2 3B — відкриті моделі вагою 4-5 ГБ; Llama 3.2 3B підійде для слабших машин, Mistral 7B — для потужніших
- ChromaDB — безкоштовна векторна база даних для довгострокової пам’яті агента; зберігає контекст між сесіями
- VS Code — редактор коду; безкоштовний, зручний для дебагінгу Python
📋 Покрокова інструкція
Крок 1: Встановлення Ollama та завантаження моделі
Перейди на сайт ollama.com, натисни велику кнопку Download і обери свою ОС — Windows, macOS або Linux. Після встановлення відкрий термінал і виконай команду ollama pull mistral — це завантажить модель Mistral 7B (~4.1 ГБ). Якщо RAM менше 16 ГБ, замість цього введи ollama pull llama3.2:3b — ця модель важить лише 2 ГБ і теж чудово справляється з агентними задачами. Перевір, що все працює: введи ollama run mistral і напиши будь-яке запитання — модель має відповісти прямо в терміналі. Для виходу з діалогу натисни /bye.

Крок 2: Створення Python-середовища та встановлення залежностей
Відкрий VS Code, створи нову папку проєкту — наприклад local-ai-agent — і відкрий в ній термінал. Виконай команди по черзі: спочатку python -m venv venv, потім на Windows — venv\Scripts\activate, на Mac/Linux — source venv/bin/activate. Тепер встанови всі потрібні бібліотеки однією командою: pip install langchain langchain-ollama langchain-community chromadb duckduckgo-search pypdf. Підводний камінь: якщо отримуєш помилку Microsoft Visual C++ required на Windows — спочатку встанови Visual Studio Build Tools, а потім повтори pip install.
Крок 3: Налаштування ядра агента з інструментами
Створи файл agent.py і встав наступний код. Спочатку імпорти та ініціалізація моделі через Ollama:
from langchain_ollama import OllamaLLM
from langchain.agents import AgentExecutor, create_react_agent
from langchain.tools import Tool
from langchain_community.tools import DuckDuckGoSearchRun
from langchain.prompts import PromptTemplate
from langchain.memory import ConversationBufferMemory
llm = OllamaLLM(model="mistral", temperature=0.3)
search = DuckDuckGoSearchRun()
memory = ConversationBufferMemory(memory_key="chat_history", return_messages=True)
Далі оголоси список інструментів — саме вони перетворюють просту модель на агента. Додай пошук у мережі та читання файлів як окремі Tool-об’єкти з чіткими описами: що робить кожен інструмент і коли його використовувати. Чим точніший опис — тим рідше агент плутається у виборі дії.
Крок 4: Додавання інструментів та запуск агента
Додай до agent.py визначення інструментів та промпт:
def read_file(filename: str) -> str:
try:
with open(filename, 'r', encoding='utf-8') as f:
return f.read()
except Exception as e:
return f"Помилка: {e}"
tools = [
Tool(name="WebSearch", func=search.run,
description="Шукає актуальну інформацію в інтернеті. Використовуй для питань про події, факти, ціни."),
Tool(name="ReadFile", func=read_file,
description="Читає вміст локального файлу. Передай шлях до файлу як аргумент.")
]
prompt = PromptTemplate.from_template("""Ти корисний AI-асистент. Відповідай українською.
Інструменти: {tools}
Назви інструментів: {tool_names}
Історія: {chat_history}
Запит: {input}
Думки: {agent_scratchpad}""")
agent = create_react_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools, memory=memory, verbose=True, max_iterations=5)
while True:
query = input("\nТи: ")
if query.lower() == "вихід": break
result = executor.invoke({"input": query})
print(f"\nАгент: {result['output']}")
Запусти агента командою python agent.py. Якщо в терміналі з’явився рядок Ти: — агент живий і чекає на запитання.
Крок 5: Тестування та підключення векторної пам’яті
Спочатку протестуй базові можливості: напиши агенту “Знайди актуальний курс долара до гривні” — він має скористатися WebSearch і повернути результат. Потім створи текстовий файл notes.txt у папці проєкту і попроси: “Прочитай файл notes.txt і зроби короткий підсумок”. Для довгострокової пам’яті між сесіями створи окремий файл memory_store.py, ініціалізуй ChromaDB: from chromadb import Client; client = Client() і зберігай туди важливі відповіді після кожної сесії. Фінальний результат: агент веде діалог, пам’ятає контекст розмови, вміє шукати в мережі та читати локальні документи — і все це без жодного API-ключа.

⚠️ Типові помилки та як їх уникнути
- Агент зациклюється і не може зупинитись — завжди встановлюй параметр
max_iterations=5в AgentExecutor; без обмеження модель може безкінечно “думати” і з’їсти всю RAM - Модель відповідає англійською попри вказівку — додай до системного промпту жирним: “ALWAYS respond in Ukrainian. Never switch to English”; маленькі моделі часто ігнорують м’які інструкції
- Помилка “Connection refused” при запуску — це означає, що Ollama не запущена у фоні; на Windows знайди іконку Ollama в системному треї і переконайся, що вона активна; на Linux виконай
ollama serveв окремому терміналі - Модель “вигадує” результати пошуку замість реального — перевір, що duckduckgo-search встановлений актуальної версії:
pip install -U duckduckgo-search; стара версія може повертати порожні результати, і модель починає галюцинувати
💡 Поради для кращого результату
По-перше, використовуй temperature=0.1 для агентних задач замість дефолтного 0.7 — агент буде менш “творчим” і більш передбачуваним при виборі інструментів, що критично для надійності. По-друге, додай до кожного Tool опис у форматі “Використовуй ТІЛЬКИ коли…” — це різко скорочує кількість неправильних викликів інструментів. По-третє, для великих документів (PDF, Word) не передавай весь текст одразу — розбий файл на чанки по 500 токенів через RecursiveCharacterTextSplitter з LangChain і завантаж у ChromaDB для семантичного пошуку, інакше модель просто обріже контекст. По-четверте, логуй всі виклики агента у файл agent_log.txt — параметр verbose=True показує думки агента в терміналі, але вони зникають після закриття; лог допоможе зрозуміти, чому агент прийняв неправильне рішення.
❓ Часті запитання (FAQ)
1. Чи можна запустити це без відеокарти?
Так, Ollama чудово працює тільки на CPU. Llama 3.2 3B на сучасному Core i7 генерує ~8-12 токенів на секунду — цілком комфортна швидкість для агента. GPU просто прискорить роботу у 3-5 разів.
2. Яку модель обрати для продуктивності та якості?
Для слабких машин (8 ГБ RAM) — Llama 3.2 3B або Phi-3 Mini. Для 16 ГБ — Mistral 7B або Llama 3.1 8B. Для 32 ГБ і більше — Qwen2.5 14B, яка показує результати близькі до GPT-4o на більшості задач.
3. Як додати агенту можливість виконувати код?
Встанови бібліотеку langchain-experimental і додай інструмент PythonREPLTool — він дозволяє агенту писати і запускати Python-код прямо під час відповіді. Обережно: завжди запускай в ізольованому середовищі або Docker-контейнері.
4. Скільки коштує утримання такого агента?
Фактично нуль — після одноразового завантаження моделі (4-8 ГБ) всі витрати зводяться лише до електроенергії. Порівняй з GPT-4o API, де 1 мільйон вхідних токенів коштує $5 — при активному використанні це швидко перетворюється на десятки доларів на місяць.
5. Чи можна розгорнути такого агента для кількох користувачів?
Так: Ollama підтримує REST API за адресою http://localhost:11434, тому можна обгорнути агента у FastAPI-сервер і зробити веб-інтерфейс через Gradio або Streamlit. Для команди до 5 осіб вистачить одного сервера з 32 ГБ RAM.
🏁 Підсумок
Ти щойно зібрав повноцінного AI агента, який працює повністю локально: він веде діалог з пам’яттю, шукає інформацію в мережі та читає твої документи — і все це без підписок, API-ключів та хмарних сервісів. Це не іграшка, а реальна основа для автоматизації задач: від аналізу документів до особистого асистента розробника.
Прямо зараз відкрий термінал і введи ollama pull llama3.2:3b — поки модель завантажується, створи папку проєкту та активуй virtualenv. Перший діалог з власним локальним агентом займе менше години, а далі ти самостійно зрозумієш, як розширювати його можливостями під свої задачі.
РОЗСИЛКА
📬 Щотижневий AI-дайджест
Найкращі статті про ШІ та автоматизацію — без спаму, лише суть
Без спаму · Відписатись будь-коли

