Itinai.com lat lay of a minimalist ai business toolkit on a c 0402bced 02f4 46e4 b510 37913864cde9 0
Itinai.com lat lay of a minimalist ai business toolkit on a c 0402bced 02f4 46e4 b510 37913864cde9 0

Создание быстрого семантического поиска и QA-движка на основе данных с веб-страниц с использованием Together AI и LangChain

Легче сразу спросить 💭

AI снижает операционные расходы на 20–40% 📊 за 6 месяцев. А что бы вы сделали с этими деньгами?

Опишите задачу — обсудим, как это можно реализовать у вас.

ИИ автоматизирует 70% рутинных задач 🤖 за 3 месяца. Какие процессы в вашем бизнесе скинуть роботу?
Персонализированные AI-кампании увеличивают клиентскую базу на 30% 📈. Как это работает?
AI-аналитика сокращает ошибки в прогнозах на 50% 📉. Расскажите подробнее!



Руководство по созданию системы вопросов и ответов с использованием Together AI

Введение

В этом руководстве мы покажем, как быстро превратить неструктурированный текст в сервис вопросов и ответов, который ссылается на свои источники. Мы будем использовать Together AI для извлечения информации с веб-страниц и создания семантической базы данных.

Шаг 1: Установка необходимых библиотек

Для начала установим все необходимые библиотеки с помощью следующей команды:

!pip -q install --upgrade langchain-core langchain-community langchain-together faiss-cpu tiktoken beautifulsoup4 html2text

Эта команда обновляет и устанавливает все необходимые библиотеки для работы с Together AI.

Шаг 2: Настройка API ключа

Проверяем, установлен ли ключ API для Together AI. Если нет, запрашиваем его у пользователя:

if "TOGETHER_API_KEY" not in os.environ:
    os.environ["TOGETHER_API_KEY"] = getpass.getpass("Введите ваш API ключ: ")

Это позволяет безопасно хранить ключ и использовать его в дальнейшем.

Шаг 3: Извлечение данных с веб-страниц

Используем WebBaseLoader для извлечения информации с нескольких URL:

URLS = [
    "https://python.langchain.com/docs/integrations/text_embedding/together/",
    "https://api.together.xyz/",
    "https://together.ai/blog"  
]
raw_docs = WebBaseLoader(URLS).load()

Это позволяет собрать актуальную документацию и блоги для дальнейшей обработки.

Шаг 4: Разделение текста на части

Разделяем извлеченные документы на более мелкие части для лучшего анализа:

splitter = RecursiveCharacterTextSplitter(chunk_size=800, chunk_overlap=100)
docs = splitter.split_documents(raw_docs)

Это помогает сохранить контекст при обработке текста.

Шаг 5: Создание векторного индекса

Создаем векторный индекс для быстрого поиска:

embeddings = TogetherEmbeddings(model="togethercomputer/m2-bert-80M-8k-retrieval")
vector_store = FAISS.from_documents(docs, embeddings)

Теперь у нас есть база данных, которая поддерживает быстрый поиск.

Шаг 6: Настройка модели для общения

Используем модель ChatTogether для генерации ответов:

llm = ChatTogether(model="mistralai/Mistral-7B-Instruct-v0.3", temperature=0.2, max_tokens=512)

Эта модель позволяет получать точные и последовательные ответы.

Шаг 7: Создание цепочки вопросов и ответов

Объединяем все компоненты в одну цепочку:

qa_chain = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=vector_store.as_retriever(search_kwargs={"k": 4}), return_source_documents=True)

Теперь мы можем задавать вопросы и получать ответы с указанием источников.

Шаг 8: Получение ответа на вопрос

Отправляем запрос и получаем ответ:

QUESTION = "Как использовать TogetherEmbeddings внутри LangChain?"
result = qa_chain(QUESTION)

Это позволяет получить ответ с указанием источников информации.

Заключение

В результате мы создали полную систему вопросов и ответов с использованием Together AI. Этот подход модульный и позволяет легко заменять компоненты. Вы можете использовать этот шаблон для создания внутреннего помощника, бота для клиентов или личного исследовательского помощника.

Автоматизация процессов

Изучите, какие процессы можно автоматизировать, и определите ключевые показатели эффективности (KPI), чтобы убедиться, что ваши инвестиции в ИИ приносят пользу бизнесу.

Контакты

Если вам нужна помощь в управлении ИИ в бизнесе, свяжитесь с нами по адресу hello@itinai.ru. Подписывайтесь на наш Telegram, чтобы быть в курсе последних новостей в области ИИ.

Пример решения на основе ИИ

Посмотрите на практический пример решения на основе ИИ: продажный бот, который автоматизирует взаимодействие с клиентами круглосуточно.


Новости в сфере искусственного интеллекта