Como construir um sistema de pano usando Deepseek R1?


Eu tenho lido muito sobre agentes RAG e IA, mas com o lançamento de novos modelos como Deepseek V3 e Deepseek R1, parece que a possibilidade de criar sistemas de pano eficientes melhorou significativamente, oferecendo melhor precisão de recuperação, recursos aprimorados de raciocínio e recursos de raciocínio e Arquiteturas mais escaláveis ​​para aplicativos do mundo actual. A integração de mecanismos de recuperação mais sofisticados, opções aprimoradas de ajuste fino e recursos multimodais estão mudando a maneira como os agentes de IA interagem com os dados. Isso levanta questões sobre se as abordagens tradicionais de pano ainda são o melhor caminho a seguir ou se as arquiteturas mais recentes podem fornecer soluções mais eficientes e contextualmente conscientes.

Geração de recuperação usededed (RAG) Os sistemas revolucionaram a maneira como os modelos de IA interagem com os dados combinando abordagens generativas e baseadas em recuperação para produzir respostas mais precisas e com conhecimento de contexto. Com o advento de Deepseek R1um modelo de código aberto conhecido por sua eficiência e custo-efetividade, a construção de um sistema de pano eficaz tornou-se mais acessível e prático. Neste artigo, estamos construindo um sistema de pano usando o Deepseek R1.

O que é Deepseek R1?

Deepseek R1 é um modelo de IA de código aberto desenvolvido com o objetivo de fornecer recursos de raciocínio e recuperação de alta qualidade por uma fração do custo de modelos proprietários, como as ofertas da Openai. Possui uma licença do MIT, tornando -a comercialmente viável e adequada para uma ampla gama de aplicativos. Além disso, esse modelo poderoso permite que você veja o berço, mas o Openai O1 e o O1-mini não mostram nenhum token de raciocínio.

Saber como o Deepseek R1 está desafiando o modelo OpenAI O1: Deepseek R1 vs Openai O1: Qual é mais rápido, mais barato e mais inteligente?

Benefícios do uso do Deepseek R1 para sistema de pano

Construir um sistema de geração de recuperação de recuperação (RAG) usando Deepseek-R1 oferece várias vantagens notáveis:

1. Capacidades avançadas de raciocínio: Deepseek-R1 foi projetado para imitar o raciocínio do tipo humano, analisando e processando informações passo a passo antes de chegar a conclusões. Essa abordagem aprimora a capacidade do sistema de lidar com consultas complexas, principalmente em áreas que exigem inferência lógica, raciocínio matemático e tarefas de codificação.

2. Acessibilidade de código aberto: Lançado sob a licença do MIT, o DeepSeek-R1 é totalmente aberto, permitindo que os desenvolvedores tenham acesso irrestrito ao seu modelo. Essa abertura facilita a personalização, o ajuste fino e a integração em várias aplicações sem as restrições frequentemente associadas a modelos proprietários.

3. Desempenho competitivo: Testes de referência indicam que o DeepSeek-R1 é executado em pé de igualdade com, ou até supera modelos líderes como o Open O1 em tarefas que envolvem raciocínio, matemática e codificação. Esse nível de desempenho garante que um sistema de pano construído com Deepseek-R1 possa oferecer respostas precisas e de alta qualidade em consultas diversas e desafiadoras.

4. Transparência no processo de pensamento: Deepseek-r1 emprega uma metodologia de “cadeia de pensamento”, tornando suas etapas de raciocínio visíveis durante a inferência. Essa transparência não apenas ajuda a depurar e refinar o sistema, mas também cria confiança do usuário, fornecendo informações claras sobre como as conclusões são alcançadas.

5. Custo-efetividade: A natureza de código aberto da Deepseek-R1 elimina as taxas de licenciamento e sua arquitetura eficiente reduz os requisitos de recursos computacionais. Esses fatores contribuem para uma solução mais econômica para organizações que desejam implementar sistemas de pano sofisticados sem incorrer em despesas significativas.

A integração do Deepseek-R1 em um sistema de pano fornece uma potente combinação de habilidades avançadas de raciocínio, transparência, desempenho e eficiência de custos, tornando-a uma escolha atraente para desenvolvedores e organizações que visam aprimorar seus recursos de IA.

Etapas para construir um sistema de pano usando Deepseek R1

O script é um pipeline de geração de recuperação que usa a recuperação (RAG) que:

  • Carrega e processa um documento em PDF dividindo -o em páginas e extraindo texto.
  • Armazena representações vetorizadas do texto em um banco de dados (Chromadb).
  • Recupera conteúdo relevante Usando a pesquisa de similaridade quando uma consulta é feita.
  • Usa um LLM (modelo Deepseek) Para gerar respostas com base no texto recuperado.

Instale pré -requisitos

curl -fsSL https://ollama.com/set up.sh | sh

Depois disso, puxe o Deepseek R1: 1,5b usando:

ollama pull deepseek-r1:1.5b

Isso levará um momento para baixar:

ollama pull deepseek-r1:1.5b

pulling manifest
pulling aabd4debf0c8... 100% ▕████████████████▏ 1.1 GB                         
pulling 369ca498f347... 100% ▕████████████████▏  387 B                         
pulling 6e4c38e1172f... 100% ▕████████████████▏ 1.1 KB                         
pulling f4d24e9138dd... 100% ▕████████████████▏  148 B                         
pulling a85fe2a2e58e... 100% ▕████████████████▏  487 B                         
verifying sha256 digest 
writing manifest 
success 

Depois de fazer isso, abra seu pocket book Jupyter e comece com a parte da codificação:

1. Instale dependências

Antes de executar, o script instala as bibliotecas Python necessárias:

  • langchain → Uma estrutura para criar aplicativos usando grandes modelos de idiomas (LLMS).
  • langchain-openai → Fornece integração com serviços OpenAI.
  • langchain-community → Adiciona suporte para vários carregadores e utilitários de documentos.
  • langchain-chroma → Ativa a integração com o Chromadb, um banco de dados vetorial.

2. Digite a chave da API OpenAi

Para acessar o modelo de incorporação do OpenAI, o script leva o usuário a Insira sua chave de API com segurança usando getpass(). Isso impede que a exposição de credenciais em texto simples.

3. Configure variáveis ​​de ambiente

O script armazena a chave da API como uma variável de ambiente. Isso permite que outras partes do código acessem o OpenAi Providers sem credenciais de codificaçãoo que melhora a segurança.

4. Inicialize as incorporações do OpenAi

O script inicializa um modelo de incorporação do OpenAI chamado "text-embedding-3-small". Este modelo converte texto em incorporações de vetorque são representações numéricas de alta dimensão do significado do texto. Essas incorporações são mais tarde usadas para Examine e recupere conteúdo semelhante.

5. Carregar e dividir um documento em PDF

Um arquivo pdf (AgenticAI.pdf) é carregado e dividido em páginas. O texto de cada página é extraído, o que permite pedaços de texto menores e mais gerenciáveis Em vez de processar o documento inteiro como uma única unidade.

6. Crie e armazene um banco de dados vetorial

  • O texto extraído do PDF é convertido em incorporações de vetor.
  • Essas incorporações são armazenado em Chromadbum alto desempenho banco de dados vetorial.
  • O banco de dados está configurado para usar similaridade de cossenoo que garante que o texto com um alto grau de similaridade semântica seja recuperado com eficiência.

7. recuperar textos semelhantes usando um limite de similaridade

UM retriever é criado usando o Chromadb, que:

  • Procura os 3 melhores semelhantes documentos com base em uma determinada consulta.
  • Filtros resultados com um limite de similaridade de 0,3 (ou seja, os documentos devem ter pelo menos 30% de similaridade para serem considerados relevantes).

8. Consulta para documentos semelhantes

São usadas duas consultas de teste:

  1. "What's the outdated capital of India?"
    • Nenhum resultado foi encontradoo que indica que os documentos armazenados não contêm informações relevantes.
  2. "What's Agentic AI?"
    • Recupera o texto relevante com sucessodemonstrando que o sistema pode buscar um contexto significativo.

9. Construa uma cadeia de pano (geração de recuperação de recuperação)

O script configura um Oleoduto RAGo que garante que:

  • Recuperação de texto acontece antes de gerar uma resposta.
  • A resposta do modelo é baseado estritamente no conteúdo recuperadoprevenindo alucinações.
  • UM Modelo rápido é usado para instruir o modelo para gerar respostas estruturadas.

10. Carregue uma conexão com um LLM (modelo Deepseek)

Em vez do GPT do OpenAi, o script Carrega Deepseek-R1 (parâmetros 1,5b)um poderoso LLM otimizado para tarefas baseadas em recuperação.

11. Crie uma cadeia à base de pano

Langchain’s Recuperação O módulo é usado para:

  • Buscar conteúdo relevante do banco de dados vetorial.
  • Formatar uma resposta estruturada Usando um modelo rápido.
  • Gerar uma resposta concisa com o modelo Deepseek.

12. Teste a cadeia de pano

O script executa uma consulta de teste:
"Inform the Leaders’ Views on Agentic AI"

O LLM gera uma resposta baseada em fatos estritamente usando o contexto recuperado.

O sistema Recupera informações relevantes do banco de dados.

Código para construir um sistema de pano usando Deepseek R1

Aqui está o código:

Instale dependências OpenAi e Langchain

!pip set up langchain==0.3.11
!pip set up langchain-openai==0.2.12
!pip set up langchain-community==0.3.11
!pip set up langchain-chroma==0.1.4

Digite a chave da API aberta da AI

from getpass import getpass
OPENAI_KEY = getpass('Enter Open AI API Key: ')

Variáveis ​​de ambiente de configuração

import os
os.environ('OPENAI_API_KEY') = OPENAI_KEY

Abrir modelos de incorporação de IA

from langchain_openai import OpenAIEmbeddings
openai_embed_model = OpenAIEmbeddings(mannequin="text-embedding-3-small")

Crie um db de vetor e persista no disco

from langchain_community.document_loaders import PyPDFLoader
loader = PyPDFLoader('AgenticAI.pdf')
pages = loader.load_and_split()
texts = (doc.page_content for doc in pages)

from langchain_chroma import Chroma
chroma_db = Chroma.from_texts(
    texts=texts,
    collection_name="db_docs",
    collection_metadata={"hnsw:house": "cosine"},  # Set distance perform to cosine
embedding=openai_embed_model
)

Similaridade com a recuperação do limite

similarity_threshold_retriever = chroma_db.as_retriever(search_type="similarity_score_threshold",search_kwargs={"okay": 3,"score_threshold": 0.3})

question = "what's the outdated capital of India?"
top3_docs = similarity_threshold_retriever.invoke(question)
top3_docs
()
question = "What's Agentic AI?"
top3_docs = similarity_threshold_retriever.invoke(question)
top3_docs
Como construir um sistema de pano usando Deepseek R1?

Construa uma corrente de pano

from langchain_core.prompts import ChatPromptTemplate
immediate = """You might be an assistant for question-answering duties.
            Use the next items of retrieved context to reply the query.
            If no context is current or if you do not know the reply, simply say that you do not know.
            Don't make up the reply except it's there within the supplied context.
            Maintain the reply concise and to the purpose with regard to the query.
            Query:
            {query}
            Context:
            {context}
            Reply:
         """
prompt_template = ChatPromptTemplate.from_template(immediate)

Carregar conexão com LLM

from langchain_community.llms import Ollama
deepseek = Ollama(mannequin="deepseek-r1:1.5b")

Langchain Sintaxe para cadeia de pano

from langchain.chains import Retrieval
rag_chain = Retrieval.from_chain_type(llm=deepseek,
                                           chain_type="stuff",
                                           retriever=similarity_threshold_retriever,
                                           chain_type_kwargs={"immediate": prompt_template})
question = "Inform the Leaders’ Views on Agentic AI"
rag_chain.invoke(question)
{'question': 'Inform the Leaders’ Views on Agentic AI',
saída

Confira nossos artigos detalhados sobre o trabalho e comparação do DeepSeek com modelos semelhantes:

Conclusão

Construindo um sistema de pano usando Deepseek R1 Fornece uma maneira econômica e poderosa de aprimorar a recuperação de documentos e a geração de respostas. Com sua natureza de código aberto e fortes recursos de raciocínio, é uma ótima alternativa às soluções proprietárias. Empresas e desenvolvedores podem alavancar sua flexibilidade para criar aplicativos orientados a IA adaptados às suas necessidades.

Deseja criar aplicativos usando o Deepseek? Confira o nosso Curso Deepseek grátis hoje!

Oi, eu sou Pankaj Singh Negi – Editor de Conteúdo Sênior | Apaixonado por contar histórias e criar narrativas atraentes que transformam idéias em conteúdo impactante. Adoro ler sobre a tecnologia revolucionando nosso estilo de vida.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *