Deepseek R1 ist hier und erweist sich als unglaublich hilfreich für den Aufbau von AI -Anwendungen. Seine fortschrittliche Architektur, die Verstärkungslernen mit a kombiniert Mischung von Experten (MOE) Rahmen sorgt für eine hohe Effizienz und Genauigkeit. In diesem Artikel werde ich ein RQA-System (Abrufbasiertes Fragen Antwortbeantwortung) mit Deepseek R1, Langchain und Stromlit erstellen. In dieser Schritt-für-Schritt-Anleitung wird angezeigt, wie Sie Deepseek R1 in eine praktische Anwendung integrieren und ihre Fähigkeiten bei der Behandlung realer Argumentationsaufgaben demonstrieren.
Lernziele
- Verstehen Sie, wie das RQA-System mit Deepseek R1 das Denken und die Problemlösung verbessert.
- Erkunden Sie die Architektur und die wichtigsten Merkmale von Deepseek R1 für AI-gesteuerte Q & A.
- Erfahren Sie, wie Sie Deepseek R1 in retrievalbasierte Fragen-Reply-Systeme integrieren.
- Entdecken Sie, wie Verstärkungslernen verbessert die Genauigkeit von Deepseek R1 -Antworten.
- Analysieren Sie reale Anwendungen von Deepseek R1 in Codierung, Mathematik und logischem Denken.
Dieser Artikel wurde als Teil der veröffentlicht Information Science Blogathon.
Was ist Deepseek-R1?
Open-Supply Basis-Modelle sind zu einem Sport-Changer im sich schnell entwickelnden Bereich von geworden Künstliche IntelligenzErmöglichung von Unternehmen, KI-Anwendungen zu entwickeln und zu fein. Die KI-Group fördert basierend auf diesen Open-Supply-Modellen, da sie für Entwickler und Endbenutzer von Vorteil sind. Und das ist der Vorteil von Deepseek-R1.
Deepseek-R1 ist ein Open-Supply-Modell, das von Deepseek, einer chinesischen KI-Firma, veröffentlicht wurde. Ziel ist es, Aufgaben zu lösen, die logisches Denken erfordern, mathematische Probleme lösen und Echtzeitentscheidungen treffen. Die Deepseek-R1-Modelle bieten eine hervorragende Leistung und Effizienz, während sie eine breite Palette von Aktivitäten abwickeln, vom allgemeinen Denken bis zur Erstellung von Code.
Trainingsprozess von Deepseek-R1-Zero und Deekseek-R1
Normalerweise, Großsprachige Modelle (LLMs) durchlaufen einen dreistufigen Schulungsprozess. Erstens sind sie während der Voraussetzung enormen Mengen an Textual content und Code ausgesetzt, um allgemeines Wissen zu erlernen, sodass sie das nächste Wort in einer Sequenz vorhersagen können. Obwohl sie dies beherrschen, haben sie zunächst Schwierigkeiten, die menschlichen Anweisungen zu befolgen. Die beaufsichtigte Feinabstimmung ist der nächste Schritt, bei dem das Modell auf einem Datensatz mit Anweisungsreaktionspaaren trainiert wird und seine Fähigkeit, den Anweisungen zu folgen, erheblich verbessert. Zuletzt verfeinert das Verstärkungslernen das Modell mithilfe von Suggestions weiter. Dies kann durch Verstärkungslernen aus dem menschlichen Suggestions (RLHF) erfolgen, bei dem menschliche Eingabebereich das Coaching oder das Verstärkungslernen aus AI -Suggestions (RLAIF) führt, wo ein anderes KI -Modell Suggestions bietet.
Das Deepseek-R1-Zero-Modell verwendet ein vorgebildetes Deek-V3-Base-Modell mit 671 Milliarden Parametern. Aber es lässt diese beaufsichtigte Bühne aus. Verwenden Sie eine großen Verstärkungslernen -Lerntechnik namens Group Relative Coverage Optimization (GRPO).
Die Gruppenrelationsrichtlinienoptimierung (GRPO) basiert auf dem Framework (Proximal Coverage Optimization) (PPO), verwirft jedoch die Notwendigkeit eines Wertungsfunktionsmodells, wodurch der Trainingsprozess und die Reduzierung des Speicherverbrauchs vereinfacht werden. Für jede Eingangsfrage generiert es im Grunde mehrere Ausgänge und jeder Ausgabe erhält eine Bewertung mit einem Belohnungsmodell. Anschließend dient der Durchschnitt dieser Belohnungen als Basislinie, um die Vorteile und einen KL -Divergenzbegriff zu berechnen. Es kämpft jedoch mit Lesbarkeitsproblemen, da es schwer zu verstehen ist und die Sprachen oft vermischt. So wurde Deepseek-R1 erstellt, um diese Probleme anzugehen.
Vier Phasen von Deepseek-R1
Deepseek-R1 baut auf Deepseek-R1-Null auf und behebt seine Probleme. Es ist in vier Etappen ausgebildet, die wie folgt beschrieben werden:
- Stufe 1 (kalter Begin): Es beginnt mit dem vorgeborenen Deepseek-V3-Base-Modell und ist in einem kleinen, hochwertigen Datensatz von Deepseek-R1-Zero fein abgestimmt, um die Lesbarkeit zu verbessern.
- Stufe 2 (Argumentationsverstärkungslernen): Verbessert die Argumentationsfähigkeiten durch groß angelegte Verstärkungslernen und konzentriert sich auf Aufgaben wie Codierung, Mathematik, Naturwissenschaften und Logik.
- Stufe 3 (Ablehnungsabtastung und beaufsichtigte Feinabstimmung): Das Modell erzeugt mehrere Stichproben und behält nur die richtigen und lesbaren mit Ableitungen beibehalten. Dann ist es weiter mit einem generativen Belohnungsmodell abgestimmt. Diese Part umfasst Daten, die über die Argumentation Fragen hinausgehen und die Fähigkeiten des Modells erweitern.
- Stufe 4 (vielfältiges Verstärkungslernen): Wendet regelbasierte Belohnungen für Aufgaben wie Mathematik an und verwendet Suggestions von einem Sprachmodell, um das Modell mit den menschlichen Einstellungen auszurichten.
Merkmale von Deepseek-R1
Open Supply: Es wird unter einer MIT -Lizenz verteilt und ermöglicht eine kostenlose Inspektion, Änderung und Integration in verschiedene Projekte. Deepseek-R1 ist auf Plattformen wie Github und Azure AI Foundry erhältlich und bietet Entwicklern und Forschern die Zugänglichkeit.
- Leistung: Deepseek-R1 führt vergleichsweise mit OpenAIs GPT-4 auf verschiedenen Benchmarks aus, einschließlich Aufgaben, die sich auf Mathematik, Codegenerierung und komplexes Denken beziehen.
- Mischung aus Experten (MOE) Architektur: Das Modell basiert auf einer Mischung aus Experten -Framework, die 671 Milliarden Parameter enthält, aber während jeder Vorwärtspass nur 37 Milliarden aktiviert.
Destillierte Modelle: Deepseek-R1 bietet viele destillierte Modelle, darunter Deepseek-R1-Distill-Qwen-32B und kleinere Varianten wie Qwen-1.5b, 7b und 14b. Destillierte Modelle sind kleinere Modelle, die nach der Übertragung von Wissen von größeren erstellt wurden. Auf diese Weise können Entwickler AI-angetriebene Anwendungen erstellen und bereitstellen, die effizient im Gerät ausgeführt werden.
Wie benutze ich Deepseek-R1 vor Ort?
Es ist ganz einfach!
- Installieren Ollama Für Ihr lokales System.
- Führen Sie den folgenden Befehl in Ihrem Terminal aus. (Deepseek-R1 reicht von 1,5B bis 671B Parametern)
# Enter the command in terminal
ollama run deepseek-r1 # To make use of the default 7B mannequin
# To make use of a particular mannequin
ollama run deepseek-r1:1.5b
Ausgabe:
Schritte zum Aufbau eines RQA -Techniques mit Deepseek R1
Lassen Sie uns ein Abruffragestellsystem mit Langchain erstellen, das von Deepseek-R1 für Argumentation angetrieben wird!
Schritt 1: Importierende Bibliotheken importieren
Importieren Sie notwendige Bibliotheken, einschließlich Streamlit, Langchain_Community.
import streamlit as st
from langchain_community.document_loaders.csv_loader import CSVLoader
from langchain_community.embeddings import HuggingFaceEmbeddings
from langchain_community.vectorstores import FAISS
from langchain_community.llms import Ollama
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
from langchain.chains.combine_documents.stuff import create_stuff_documents_chain
from langchain.chains import RetrievalQA
Schritt 2: Uploader der Streamlit -Datei
Erstellen Sie einen Streamlit -Datei -Uploader, damit CSV -Dateien hochgeladen werden können.
# Streamlit file uploader for CSV recordsdata
uploaded_file = st.file_uploader("Add a CSV file", kind="csv")
if uploaded_file:
# Save CSV briefly
temp_file_path = "temp.csv"
with open(temp_file_path, "wb") as f:
f.write(uploaded_file.getvalue())
Schritt 3: CSV laden und Einbettungen erstellen
Wenn CSV -Dateien hochgeladen sind, laden Sie sie, um Einbettungen zu erstellen. Einbettungen werden unter Verwendung von Huggingfaceembeding erstellt, um die CSV -Daten in Vektordarstellungen umzuwandeln.
loader = CSVLoader(file_path=temp_file_path)
docs = loader.load()
embeddings = HuggingFaceEmbeddings()
Schritt 4: Vektor Retailer erstellen
Erstellen Sie einen Faiss -Vektorspeicher aus den Dokumenten und Einbettungen, um eine effiziente Ähnlichkeitssuche zu ermöglichen.
vector_store = FAISS.from_documents(docs, embeddings)
Schritt 5: Schließen Sie einen Retriever an
Initialisieren Sie einen Retriever mit dem Vektorspeicher und geben Sie die Anzahl der zu abgerufenen Prime -Dokumente an (ich habe ihn als 3 festgelegt).
retriever = vector_store.as_retriever(search_kwargs={"ok": 3})
Schritt 6: Definieren Sie die LLM
Durch die Verwendung von Ollama können wir die LLM definieren. Erwähnen Sie die Deepseek-R1-Model als Parameter.
llm = Ollama(mannequin="deepseek-r1:1.5b") # Our 1.5B parameter mannequin
Schritt 7: Erstellen Sie eine Eingabeaufforderung Vorlage
Hier verwende ich eine Standardvorlage, aber Sie können sie entsprechend Ihren Anforderungen ändern.
immediate = """
1. Use ONLY the context under.
2. If not sure, say "I don’t know".
3. Maintain solutions beneath 4 sentences.
Context: {context}
Query: {query}
Reply:
"""
QA_CHAIN_PROMPT = PromptTemplate.from_template(immediate)
Schritt 8: Definieren Sie die QA -Kette
Verwenden Sie den StuffDocumentSchain, um die LLM und die Eingabeaufforderung in eine einzelne Kette zu kombinieren, um eine dokumentbasierte Frage zu beantworten.
llm_chain = LLMChain(llm=llm, immediate=QA_CHAIN_PROMPT)
# Mix doc chunks
document_chain = create_stuff_documents_chain(
llm=llm,
immediate=QA_CHAIN_PROMPT
)
Schritt 9: Erstellen Sie die Retrievalqa -Kette
Initialisieren Sie die Retrievalqa -Kette, die den Retriever und die LLM integriert, um Benutzeranfragen basierend auf relevanten Dokumentbrocken zu beantworten.
qa = RetrievalQA.from_chain_type(
llm=llm,
retriever=retriever,
chain_type="stuff",
)
Schritt 10: Erstellen Sie die streamlitische Benutzeroberfläche für die Anwendung
Richten Sie ein streamlit -Textual content -Eingabebuch ein, in dem Benutzer Abfragen eingeben können, die Eingabe mithilfe der Abrufkette Abruf verarbeiten und die generierte Antwort anzeigen können.
user_input = st.text_input("Ask your CSV a query:")
if user_input:
with st.spinner("Considering..."):
attempt:
response = qa.run(user_input)
st.write(response)
besides Exception as e:
st.error(f"Error: {str(e)}")
Speichern Sie die Python -Datei (.py) und führen Sie sie lokal mit dem folgenden Befehl aus, um die Benutzeroberfläche anzuzeigen.
#In terminal
streamlit run filename.py
Notiz: Stellen Sie sicher, dass die erforderlichen Bibliotheken in Ihrem System installiert sind. Sie können dies durch den folgenden Befehl tun.
pip set up streamlit langchain_community transformers faiss-cpu langchain
Ausgabe
Hier habe ich einen Automobil -Datensatz hochgeladen und ihm eine Frage gestellt, die sich auf meine CSV -Datei bezieht.
Vorteil: Hier ist, was mir an Deepseek-R1s Argumenting gefallen hat-Sie können der Logik folgen! Es zeigt seinen Denken und warum es zu einem Schluss gekommen ist. So verbessert Deepseek-R1 die Erklärung von LLMs!
Abschluss
Deepseek-R1 zeigt den Weg für hochwertige KI-Modelle mit hoch entwickeltem Denken und nuanciertem Verständnis. Deepseek-R1 kombiniert leistungsstarke Verstärkungslerntechniken mit einer effizienten Mischung aus Expertenarchitektur und bietet eine Lösung für eine Vielzahl komplexer Aufgaben, von der Codegenerierung bis hin zu tiefen Argumentationsherausforderungen. Seine Open-Supply-Natur und -Angängigkeit befähigen Entwickler und Forscher weiter. Mit der kontinuierlichen Entwicklung von KI eröffnen Open-Supply-Modelle wie Deepseek-R1 die Aussichten für intelligentere und ressourceneffizientere Systeme in verschiedenen Bereichen. Mit großer Leistung, seiner beispiellosen Architektur und der beeindruckenden Ergebnisse steht Deepseek-R1 für prominente zukünftige Innovationen in der KI.
Key Takeaways
- Deepseek-R1 ist ein fortgeschrittenes Open-Supply-Argumentationsmodell für logische Problemlösungen, Mathematik und Echtzeitentscheidung.
- Das RQA-System mit Deepseek R1 ermöglicht eine effiziente dokumentbasierte Fragen-Beantwortung durch die Nutzung von Techniken zur Erzielung von Generationen.
- Der Trainingsprozess von Deepseek-R1 umfasst Verstärkungslernen, Ablehnungsableitungen und Feinabstimmungen, wodurch er für die Argumentation von Aufgaben optimiert wird.
- Das RQA-System mit Deepseek R1 verbessert die Erklärung der KI, indem er seinen Schritt-für-Schritt-Denkprozess in Antworten zeigt.
- Die MEE-Architektur von Deepseek-R1 (Experten) aktiviert nur relevante Parameter professional Aufgabe und verbessert die Effizienz bei der Behandlung komplexer Abfragen.
Referenzen
Häufig gestellte Fragen
A. Es ist ein Good Neural Community Design, das mehrere spezialisierte Untermodelle (Experten) verwendet. Ein Gating -System wählt die relevantesten Experten für jede Eingabe aus und stellt sicher, dass nur wenige gleichzeitig aktiv sind. Dies macht das Modell effizienter als herkömmliche dichte Modelle, die alle Parameter verwenden.
A. Deepseeks Chatbot ist auf der Web site des Unternehmens verfügbar und kann im Apple App Retailer und im Google Play Retailer heruntergeladen werden. Es ist auch erhältlich auf Umarmtes Gesicht Und Deepseeks API.
A. Ein abrufbasierter QA-System holt Informationen aus einem Datensatz oder Dokumenten ab und generiert Antworten basierend auf dem abgerufenen Inhalt, anstatt nur von vorgebildetem Wissen.
A. Faiss steht für Fb AI -Ähnlichkeitssuche. Es ermöglicht eine schnelle und effiziente Ähnlichkeitssuche, sodass das System die relevantesten Informationsbrocken aus den CSV -Daten abrufen kann.
A. Die Anforderungen variieren je nach Modellgröße. Zum Beispiel benötigt das 7B -Modell mindestens 8 GB RAM, während das 33B -Modell mindestens 32 GB RAM benötigt.
Die in diesem Artikel gezeigten Medien sind nicht im Besitz von Analytics Vidhya und werden nach Ermessen des Autors verwendet.