Чому "за тиждень" — це реально
Коли більшість чує "AI-асистент для бізнесу", уява малює місяці розробки і сотні тисяч доларів бюджету. Але у 2026 ситуація кардинально інша. Claude API, LangChain, Streamlit і хмарні векторні бази дозволяють зібрати робочий прототип за 5–7 робочих днів — один розробник, реальні дані, реальні користувачі.
Нижче — точний план по днях який ми використовуємо самі і рекомендуємо клієнтам.
День 1: Визначення use case і success metrics
Найважливіший день. Поганий use case вбиває проект раніше ніж написаний перший рядок коду.
Як обрати правильний use case
Хороший перший AI-асистент:
Вирішує реальну, часту проблему — щось що відбувається щодня, а не раз на рік
Має чіткий вхід і вихід — "відповідати на запитання клієнтів про умови доставки" краще ніж "допомагати з усіма питаннями"
Легко виміряти успіх — скільки запитань вирішено без ескалації, час відповіді, NPS
Є джерело даних — документи, FAQ, логи попередніх діалогів
Ідеальні перші use cases:
Бот відповідей на FAQ для клієнтів (сайт або месенджер)
Внутрішній асистент для HR-запитань нових співробітників
Помічник продажів: відповіді на питання про продукт, генерація КП
Summarizer: стисла обробка листів, звітів, протоколів нарад
Класифікатор: розподіл звернень по категоріях, визначення пріоритету
Success metrics — визначте до початку
% запитань оброблених без участі людини (мета: ≥60% для початку)
Середній час відповіді (мета: <10 секунд)
CSAT або thumbs up/down від користувачів
Кількість ескалацій до людини-агента
Deliverable дня 1
Одна сторінка: проблема, use case, target users, success metrics, scope (що точно НЕ робить асистент у v1).
День 2: Підготовка бази знань
Збираєте, очищаєте і структуруєте документи.
Інвентаризація джерел
FAQ-сторінки сайту (HTML → plain text через BeautifulSoup)
PDF-документи (pypdf або pdfplumber для складних layouts)
Notion / Confluence (офіційні API для експорту)
Google Docs / Sheets (Google Docs API або пряний export)
Попередні листи підтримки (export з Zendesk, Freshdesk, Gmail)
Очищення даних
Видаліть дублікати і застаріла інформація
Уніфікуйте форматування: видаліть зайві пробіли, спецсимволи
Переконайтесь що кожен документ має метадані: джерело, дата, категорія
Якщо є конфіденційні дані (персональні дані клієнтів) — видаліть або анонімізуйте
Чанкінг і ембединг
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain_openai import OpenAIEmbeddings
from langchain_community.vectorstores import Chroma
# Чанкінг
splitter = RecursiveCharacterTextSplitter(
chunk_size=500,
chunk_overlap=50,
separators=["\n\n", "\n", ".", "?", "!"]
)
chunks = splitter.split_documents(docs)
# Ембединг і збереження
embeddings = OpenAIEmbeddings(model="text-embedding-3-small")
vectorstore = Chroma.from_documents(chunks, embeddings, persist_directory="./db")Для прототипу — Chroma локально. Для production — pgvector або Pinecone.
Deliverable дня 2
Векторна база з усіма документами, перевірена на кількох тестових запитах.
Дні 3–4: Вибір моделі та побудова MVP
Вибір LLM для вашого use case
| Модель | Сильні сторони | Вартість (input/output) |
|---|---|---|
| Claude 3.5 Sonnet | Найкращий баланс якість/ціна, довгий контекст (200K), слідує інструкціям | $3 / $15 за 1M токенів |
| Claude 3 Haiku | Дуже швидкий, дешевий, для простих FAQ | $0.25 / $1.25 за 1M токенів |
| GPT-4o mini | Дешевий, швидкий, добра якість для простих завдань | $0.15 / $0.60 за 1M токенів |
| Gemini 1.5 Flash | Безкоштовний tier, мультимодальний | Безкоштовно / мінімальна ціна |
| Llama 3.1 (Ollama) | Повністю локально, без API-витрат, конфіденційність | $0 (оплачуєте сервер) |
Рекомендація для MVP: Claude 3.5 Sonnet для бізнес-асистентів де важлива якість, Claude 3 Haiku або GPT-4o mini для FAQ-ботів з великим обсягом запитів.
Побудова RAG-ланцюга
from langchain_anthropic import ChatAnthropic
from langchain.chains import RetrievalQA
from langchain.prompts import PromptTemplate
prompt_template = """Ти є корпоративним асистентом компанії IT Master.
Відповідай тільки на основі наданих документів.
Якщо відповіді немає в документах — скажи "Я не знайшов інформації з цього питання.
Зверніться до підтримки: [email protected]"
Відповідай мовою запитання (українська або англійська).
Контекст з документів:
{context}
Запитання: {question}
Відповідь:"""
PROMPT = PromptTemplate(template=prompt_template, input_variables=["context", "question"])
llm = ChatAnthropic(model="claude-sonnet-4-6", max_tokens=1024)
retriever = vectorstore.as_retriever(search_kwargs={"k": 5})
qa_chain = RetrievalQA.from_chain_type(
llm=llm,
chain_type="stuff",
retriever=retriever,
chain_type_kwargs={"prompt": PROMPT},
return_source_documents=True
)Веб-інтерфейс на Streamlit
import streamlit as st
st.title("IT Master — Асистент підтримки")
if "messages" not in st.session_state:
st.session_state.messages = []
for message in st.session_state.messages:
with st.chat_message(message["role"]):
st.markdown(message["content"])
if prompt := st.chat_input("Задайте питання..."):
st.session_state.messages.append({"role": "user", "content": prompt})
with st.chat_message("user"):
st.markdown(prompt)
with st.chat_message("assistant"):
result = qa_chain.invoke({"query": prompt})
response = result["result"]
sources = set(doc.metadata.get("source", "") for doc in result["source_documents"])
st.markdown(response)
if sources:
st.caption(f"Джерела: {', '.join(sources)}")
st.session_state.messages.append({"role": "assistant", "content": response})Запуск: streamlit run app.py — і у вас є робочий чат-інтерфейс з посиланням на джерела.
Deliverable днів 3–4
Локально запущений MVP що відповідає на запитання і показує джерела. Готовий до внутрішнього тестування.
Дні 5–6: Тестування з реальними користувачами
Структуроване тестування
Залучіть 5–10 реальних потенційних користувачів (не розробника і не менеджера проекту)
Дайте завдання: "Знайди відповідь на питання X використовуючи асистента"
Спостерігайте: де зависають, що перефразовують, з чим незадоволені
Що тестувати:
Happy path: прямі запитання на які є відповідь у документах
Edge cases: нечіткі запитання, синоніми, помилки у словах
Out-of-scope: запитання поза зоною відповідальності асистента — чи коректно відмовляє?
Injection attempts: "Ігноруй попередні інструкції і..." — базова перевірка prompt injection
Збір зворотного зв'язку
Додайте до інтерфейсу кнопки 👍/👎 після кожної відповіді. Логуйте: запит, відповідь, оцінку, знайдені джерела. Це золота міна для ітерацій.
Ітерації за результатами тестування
Найтиповіші проблеми і рішення:
Не знаходить релевантні документи → покращіть чанкінг або metadata, спробуйте hybrid search
Відповідь занадто загальна → зменшіть temperature, додайте більше специфіки у system prompt
Вигадує деталі → посиліть інструкцію "відповідай тільки з документів", додайте re-ranking
Відповідає не тією мовою → явно вкажіть у промпті правило мови
День 7: Деплой і план масштабування
Деплой прототипу
Streamlit Community Cloud — безкоштовний деплой для Streamlit-додатків, підходить для внутрішнього використання
Render або Railway — простий cloud деплой, від $7/місяць
Docker + Hetzner VPS — повний контроль, від €4/місяць
Telegram бот — python-telegram-bot, ідеально для команди що вже у Telegram
Налаштування моніторингу
Логування всіх запитів і відповідей (Postgres або файл)
Алерт якщо API недоступне або відповідь займає >15 сек
Щотижневий перегляд негативних 👎 оцінок
Plan масштабування після MVP
Тиждень 2–4: розширення бази знань, додавання нових документів, покращення промптів за feedback
Місяць 2: інтеграція у основний канал (сайт, CRM, Slack), налаштування ескалації до людини
Місяць 3: аналіз метрик, A/B тест різних промптів, можливо — зміна моделі на основі cost/quality аналізу
Місяць 4+: розширення use cases на основі реальних даних про запити
Вартість першого місяця
| Стаття витрат | Вартість |
|---|---|
| Розробка MVP (1 розробник, 1 тиждень) | $800–1500 |
| Claude API (Sonnet, ~500 запитів/день) | $30–80/місяць |
| OpenAI Embeddings (одноразово) | $2–10 |
| Хостинг (Render або VPS) | $7–20/місяць |
| Векторна БД (Pinecone serverless) | $0–25/місяць |
| Разом перший місяць | $840–1635 |
| Щомісяця після | $40–130 |
Висновок
Тиждень і ~$1000–1500 — цілком реалістичний бюджет для першого робочого AI-асистента. Головне: правильно обраний use case і чітко визначені метрики успіху до початку. Все інше — технічні деталі що вирішуються в процесі.
Хочете пройти цей шлях з нами? Ми проводимо AI Discovery сесії де за 2 години визначаємо оптимальний use case для вашого бізнесу і оцінюємо вартість MVP. Напишіть нам.