In diesem Blog erstellen wir eine mehrsprachige Code -Erklärung -App, um die Funktionen von LLAMA 3.3 zu präsentieren, insbesondere ihre Stärken in Bezug auf Argumentation, Anweisungen, Codierung und mehrsprachige Unterstützung.
Diese App ermöglicht Benutzern:
Die App wird mit:
erstelltwir werden direkt zum Erstellen unserer Lama 3.3 -App springen. Wenn Sie jedoch zuerst einen Überblick über das Modell möchten, lesen Sie diesen Leitfaden zu Lama 3.3. Machen wir uns los!
Um loszulegen, werden wir dies in ein paar Schritte unterbrechen. Zunächst werden wir mit dem Zugriff auf LLAMA 3.3 mit dem Umarmungsgesicht, dem Einrichten Ihres Kontos und den erforderlichen Berechtigungen abdecken. Dann erstellen wir die Projektumgebung und installieren die erforderlichen Abhängigkeiten.Eine Möglichkeit, auf LLAMA 3.3 zuzugreifen, ist das Umarmungsgesicht, eine der beliebtesten Plattformen für das Hosting von Modellen für maschinelles Lernen. Um LLAMA 3.3 über die Inferenz -API von Hugging Face zu verwenden, benötigen Sie:
Ein umarmendes Gesichtskonto.
mkdir multilingual-code-explanation cd multilingual-code-explanation
Jetzt, da die Umgebung fertig ist, installieren wir die erforderlichen Bibliotheken. Stellen Sie sicher, dass Sie Python 3.8 ausführen. Führen Sie im Terminal den folgenden Befehl aus, um Stromlit, Anfragen und umarmende Gesichtsbibliotheken zu installieren:
python3 -m venv venv source venv/bin/activate’
haben
Jetzt, da das Setup vollständig ist, können wir die App erstellen! Im nächsten Abschnitt werden wir Schritt für Schritt mit der Codierung der mehrsprachigen Code -Erläuterung beginnen.
Das Backend kommuniziert mit der umarmenden Face -API, um den Code -Snippet zu senden und die Erklärung zu erhalten.
Erstens müssen wir die Anfragebibliothek importieren. Mit dieser Bibliothek können wir HTTP -Anfragen an APIs senden. Schreiben Sie:
oben in Ihrer App.py -Datei:mkdir multilingual-code-explanation cd multilingual-code-explanation
einrichten
Um mit der Lama 3.3 -API zu interagieren, die auf Umarmung veranstaltet wird, brauchen Sie:python3 -m venv venv source venv/bin/activate’
im obigen Code:
abzufragen
Jetzt schreiben wir eine Funktion, um eine Anfrage an die API zu senden. Die Funktion wird:pip install streamlit requests transformers huggingface-hub
Die Eingabeaufforderung teilt Lama 3.3 mit, um den Code -Snippet in der gewünschten Sprache zu erklären.
Haftungsausschluss: Ich habe mit verschiedenen Eingabeaufforderungen experimentiert, um die zu finden, die die beste Ausgabe erbrachte.
Als nächstes wird die Nutzlast definiert. Für die Eingabe geben wir an, dass die Eingabeaufforderung an das Modell gesendet wird. In den Parametern steuert max_new_tokens die Antwortlänge, während die Temperatur den Kreativitätsniveau des Ausgangs anpasst.
Die Funktion der Anforderungen. Wenn die Antwort erfolgreich ist (Status_code == 200), wird der generierte Text extrahiert. Wenn ein Fehler vorliegt, wird eine beschreibende Nachricht zurückgegeben.
Schließlich gibt es Schritte, um die Ausgabe ordnungsgemäß zu reinigen und zu formatieren. Dies stellt sicher, dass es ordentlich präsentiert wird, was die Benutzererfahrung erheblich verbessert.
In der Frontend interagieren Benutzer mit der App. Streamlit ist eine Bibliothek, die interaktive Web -Apps mit nur Python -Code erstellt und diesen Prozess einfach und intuitiv macht. Dies ist, was wir verwenden werden, um die Frontend unserer App zu erstellen. Ich mag es sehr, dass stromflüssiges Gebiet aufbaut und POC!
oben in Ihrer App.py -Datei fügen Sie:
hinzumkdir multilingual-code-explanation cd multilingual-code-explanation
Wir werden set_page_config () verwenden, um den App -Titel und das Layout zu definieren. Im folgenden Code:
python3 -m venv venv source venv/bin/activate’
Um den Benutzern zu helfen
pip install streamlit requests transformers huggingface-hub
import requests
HUGGINGFACE_API_KEY = "hf_your_api_key_here" # Replace with your actual API key API_URL = "https://api-inference.huggingface.co/models/meta-llama/Llama-3.3-70B-Instruct" HEADERS = {"Authorization": f"Bearer {HUGGINGFACE_API_KEY}"}
def query_llama3(input_text, language): # Create the prompt prompt = ( f"Provide a simple explanation of this code in {language}:\n\n{input_text}\n" f"Only output the explanation and nothing else. Make sure that the output is written in {language} and only in {language}" ) # Payload for the API payload = { "inputs": prompt, "parameters": {"max_new_tokens": 500, "temperature": 0.3}, } # Make the API request response = requests.post(API_URL, headers=HEADERS, json=payload) if response.status_code == 200: result = response.json() # Extract the response text full_response = result[0]["generated_text"] if isinstance(result, list) else result.get("generated_text", "") # Clean up: Remove the prompt itself from the response clean_response = full_response.replace(prompt, "").strip() # Further clean any leading colons or formatting if ":" in clean_response: clean_response = clean_response.split(":", 1)[-1].strip() return clean_response or "No explanation available." else: return f"Error: {response.status_code} - {response.text}"
import streamlit as st
st.set_page_config(page_title="Multilingual Code Explanation Assistant", layout="wide")
Test 1: Faktorielle Funktion in Python
st.sidebar.title("How to Use the App") st.sidebar.markdown(""" 1. Paste your code snippet into the input box. 2. Enter the language you want the explanation in (e.g., English, Spanish, French). 3. Click 'Generate Explanation' to see the results. """) st.sidebar.divider() st.sidebar.markdown( """ <div > Made with ♡ by Ana </div> """, unsafe_allow_html=True )
Als spanischer Sprecher kann ich bestätigen, dass die Erklärung korrekt identifiziert, dass der Code das Fakultät einer Zahl unter Verwendung von Rekursion berechnet. Es geht durch, wie die Rekursion Schritt für Schritt funktioniert, und zerlegt es in einfache Begriffe.
Das Modell erläutert den Rekursionsprozess und zeigt, wie sich die Funktion mit abnehmenden Werten von N bis sie 0 nennt.
Die Erklärung ist ausschließlich auf Spanisch, wie angefordert, die mehrsprachige Fähigkeiten von Lama 3.3 demonstrieren.
Die Verwendung einfacher Phrasen macht das Konzept der Rekursion leicht zu befolgen, selbst für Leser, die mit der Programmierung nicht vertraut sind.
Es fasst und erwähnt, wie die Rekursion für andere Eingaben wie 3 und die Bedeutung der Rekursion als effizientes Problemlösungskonzept in der Programmierung funktioniert.
Dieser erste Test zeigt die Kraft von Lama 3.3:
Nachdem wir ein Python -Skript getestet haben, können wir zu anderen Programmiersprachen wie JavaScript oder SQL übergehen. Dies wird uns helfen, die Fähigkeiten von LLAMA 3.3 in Bezug auf Argumentation, Codierung und mehrsprachige Unterstützung weiter zu erkunden.
In diesem Test werden wir bewerten, wie gut die mehrsprachige Code -Erläuterung eine JavaScript -Funktion übernimmt und eine Erklärung in Französisch generiert.
Wir verwenden das folgende JavaScript -Code -Snippet, in dem ich absichtlich mehrdeutige Variablen ausgewählt habe, um zu sehen, wie gut das Modell dies umgeht:
mkdir multilingual-code-explanation cd multilingual-code-explanation
Dieser Code -Snippet definiert eine rekursive Funktion x (a), die das Faktor einer bestimmten Nummer a berechnet. Die Basisbedingung prüft, ob a === 1. Wenn ja, gibt sie 1. Andernfalls ruft sich die Funktion mit einem - 1 auf und multipliziert das Ergebnis mit a. Die Konstante y ist auf 6 eingestellt, so dass die Funktion x 6 × 5 × 4 × 3 × 2 × 1 berechnet. Das Ergebnis wird in der Variablen Z gespeichert und unter Verwendung von Console.log angezeigt. Hier ist die Ausgabe und die Übersetzung in Englisch:
HINWEIS: Sie können sehen, dass die Antwort plötzlich zugeschnitten ist, aber es liegt daran, dass wir die Ausgabe auf 500 Token beschränkt haben!
Nachdem ich dies übersetzt hatte, kam ich zu dem Schluss, dass die Erklärung korrekt identifiziert, dass die Funktion x (a) rekursiv ist. Es wird unterteilt, wie die Rekursion funktioniert, wobei der Basisfall (a === 1) und den rekursiven Fall (a * x (a - 1)) erklärt werden. Die Erklärung zeigt ausdrücklich, wie die Funktion das Faktor von 6 berechnet und die Rollen von Y (den Eingangswert) und z (das Ergebnis) erwähnt. Es wird auch darauf hingewiesen, wie Console.log das Ergebnis angezeigt wird.
Die Erklärung ist, wie angefordert, vollständig in Französisch. Die technischen Begriffe wie „Récursive“ (rekursiv), „Faktorielle“ (Faktor) und „Produit“ (Produkt) werden korrekt verwendet. Und nicht nur das, es wird festgestellt, dass dieser Code das Fakultät einer Zahl auf rekursive Weise berechnet.
Die Erklärung vermeidet übermäßig technisches Jargon und vereinfacht die Rekursion, wodurch die Leser neu für die Programmierung zugänglich sind.
Dieser Test zeigt, dass Lama 3.3:
Nachdem wir die App mit Python und JavaScript getestet haben, gehen wir mit einer SQL -Abfrage weiter, um die mehrsprachigen und argumentativen Funktionen weiter zu bewerten.
In diesem letzten Test werden wir bewerten, wie die mehrsprachige Code -Erläuterung eine SQL -Abfrage abwickelt und eine Erklärung auf Deutsch generiert. Hier ist das verwendete SQL -Snippet:
mkdir multilingual-code-explanation cd multilingual-code-explanation
Diese Abfrage wählt die ID -Spalte aus und berechnet den Gesamtwert (Summe (b. value)) für jede ID. Es liest Daten aus zwei Tabellen: table_x (aliased als a) und table_y (aliased als b). Verwendet dann eine Join -Bedingung, um Zeilen zu verbinden, wobei A.ref_id = B.Ref. Es filtert Zeilen, wo B.flag = 1 und die Daten von A.id. Die Klausel -Klausel filtert die Gruppen so, dass nur diejenigen enthalten sind, bei denen die Summe von b.value größer als 1000 beträgt. Schließlich ordnet sie die Ergebnisse nach Total_Amount in absteigender Reihenfolge.
Nach dem Drücken der Schaltfläche Erläuterung generieren Sie dies:
Die generierte Erklärung ist prägnant, genau und gut strukturiert. Jede Schlüssel -SQL -Klausel (ausgewählt, von, Join, wobei, gruppieren, und bestellen) klar erklärt wird. Außerdem entspricht die Beschreibung der Ausführung der Ausführung in SQL, die den Lesern hilft, die Abfragelogik Schritt für Schritt zu befolgen.
Die Erklärung ist, wie angefordert, vollständig auf Deutsch.
Key SQL -Begriffe (z. B. "filtert", "gruppiert", "sortierert") werden im Kontext genau verwendet. In der Erklärung wird angewiesen, dass das Miteinander verwendet wird, um gruppierte Ergebnisse zu filtern, was eine häufige Verwirrungsquelle für Anfänger ist. Es erklärt auch die Verwendung von Aliase (AS), um Tabellen und Spalten für Klarheit umzubenennen.
Die Erklärung vermeidet eine übermäßig komplexe Terminologie und konzentriert sich auf die Funktion jeder Klausel. Dies erleichtert Anfänger zu verstehen, wie die Abfrage funktioniert.
Dieser Test zeigt, dass Lama 3.3:
Wir haben die App mit Code -Snippets in Python, JavaScript und SQL getestet, um Erklärungen auf Spanisch, Französisch und Deutsch zu generieren. In jedem Test:
Mit diesem Test haben wir bestätigt, dass die von uns erstellte App vielseitig, zuverlässig und effektiv ist, um Code in verschiedenen Programmiersprachen und natürlichen Sprachen zu erklären.
Herzlichen Glückwunsch! Sie haben einen voll funktionsfähigen mehrsprachigen Code -Erläuterungsassistenten mit Streamlit und LLAMA 3.3 vom Umarmungsgesicht erstellt.
In diesem Tutorial haben Sie gelernt:
Dieses Projekt ist ein guter Ausgangspunkt für die Erforschung der Funktionen von Lama 3.3 in Bezug auf Code -Argumentation, mehrsprachige Unterstützung und Unterrichtsinhalte. Fühlen Sie sich frei, Ihre eigene App zu erstellen, um die leistungsstarken Funktionen dieses Modells weiter zu erforschen!
Das obige ist der detaillierte Inhalt vonLama 3.3: Schritt-für-Schritt-Tutorial mit Demo-Projekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!