
«`html
Система с использованием DeepSeek R1
С выходом DeepSeek R1 в сообществе ИИ возник интерес. Эта открытая модель показывает отличные результаты и сопоставима с современными коммерческими моделями. В этой статье мы рассмотрим, как реализовать систему Retrieval-Augmented Generation (RAG) с помощью DeepSeek R1.
Что такое RAG?
RAG сочетает преимущества систем поиска и генерации. Она извлекает информацию из базы знаний и использует её для создания точных и контекстуально релевантных ответов на запросы пользователей.
Что нужно для работы?
- Установленный Python (рекомендуется версия 3.7 или выше).
- Установленный Ollama: этот фреймворк позволяет запускать модели, такие как DeepSeek R1, локально.
Шаги для реализации
Шаг 1: Установите Ollama
Следуйте инструкциям на сайте Ollama для установки. После установки проверьте версию:
ollama --version
Шаг 2: Запустите модель DeepSeek R1
Откройте терминал и выполните команду:
ollama run deepseek-r1:1.5b
Шаг 3: Подготовьте базу знаний
Для системы поиска нужна база знаний. Это могут быть документы, статьи или другой текст, связанный с вашей областью.
import os
def load_documents(directory):
documents = []
for filename in os.listdir(directory):
if filename.endswith('.txt'):
with open(os.path.join(directory, filename), 'r') as file:
documents.append(file.read())
return documents
documents = load_documents('path/to/your/documents')
Шаг 4: Создайте хранилище векторов
Используйте векторное хранилище, например, FAISS, для эффективного поиска документов. Установите нужные библиотеки:
pip install faiss-cpu huggingface-hub
Шаг 5: Настройте поисковик
Создайте поисковик на основе запросов пользователей:
class SimpleRetriever:
def __init__(self, index, embeddings_model):
self.index = index
self.embeddings_model = embeddings_model
def retrieve(self, query, k=3):
query_embedding = self.embeddings_model.embed(query)
distances, indices = self.index.search(np.array([query_embedding]).astype('float32'), k)
return [documents[i] for i in indices[0]]
Шаг 6: Настройте DeepSeek R1 для RAG
Создайте шаблон запроса для модели:
from ollama import Ollama
from string import Template
llm = Ollama(model="deepseek-r1:1.5b")
prompt_template = Template("""
Use ONLY the context below.
If unsure, say "I don't know".
Keep answers under 4 sentences.
Context: $context
Question: $question
Answer:
""")
Шаг 7: Обработка запросов
Создайте функцию для ответа на запросы пользователей:
def answer_query(question):
context = retriever.retrieve(question)
combined_context = "n".join(context)
response = llm.generate(prompt_template.substitute(context=combined_context, question=question))
return response.strip()
Шаг 8: Запустите вашу систему RAG
Теперь вы можете протестировать вашу систему:
if __name__ == "__main__":
user_question = "What are the key features of DeepSeek R1?"
answer = answer_query(user_question)
print("Answer:", answer)
Заключение
Следуя этим шагам, вы сможете успешно реализовать систему Retrieval-Augmented Generation (RAG) с использованием DeepSeek R1. Эта настройка позволяет эффективно извлекать информацию из ваших документов и генерировать точные ответы.
Как ИИ может изменить вашу компанию?
Если вы хотите, чтобы ваша компания развивалась с помощью ИИ и оставалась в числе лидеров, используйте решения на основе ИИ. Проанализируйте, как ИИ может изменить вашу работу. Определите, где возможно применение автоматизации и какие KPI вы хотите улучшить.
Подберите подходящее решение из множества вариантов ИИ. Внедряйте ИИ постепенно: начните с небольшого проекта, анализируйте результаты и расширяйте автоматизацию на основе полученных данных и опыта.
Если вам нужны советы по внедрению ИИ, пишите нам.
«`





















