Kurzanleitung zum Ausführen eines lokalen LLM und zum Stellen von API-Anfragen

DDD
Freigeben: 2024-11-22 08:55:15
Original
761 Leute haben es durchsucht

Quick and Dirty Guide to Running a Local LLM and Making API Requests

Okay, schnallen Sie sich an, denn wir tauchen in eine schnelle und schmutzige Lösung ein, um ein lokales LLM (Sprachmodell) auszuführen und API-Anfragen zu stellen – ähnlich wie die schicken kommerziellen Lösungen. Warum? Nun, warum nicht? In nur etwa drei Minuten können Sie für die meisten Ihrer Tests ein völlig einwandfreies System lokal ausführen. Und wenn Sie jemals das Bedürfnis verspüren, wieder auf die Cloud umzusteigen, ist der Rückwechsel praktisch mühelos.

Hier ist die Dokumentation, der wir folgen werden, hauptsächlich damit Sie behaupten können, dass Sie sie gelesen haben:

  • OpenAI API-Dokumente

Wir werden uns insbesondere darauf konzentrieren, eine Anfrage wie diese zu stellen:

curl https://api.openai.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
     "model": "gpt-4o-mini",
     "messages": [{"role": "user", "content": "Say this is a test!"}],
     "temperature": 0.7
   }'
Nach dem Login kopieren

So weit, so gut, oder? Nichts Bahnbrechendes. Aber hier wird es lustig...

Betreten Sie LM Studio

Es gibt dieses Juwel von einem Tool namens LM Studio](https://lmstudio.ai/), das die Handhabung lokaler LLMs viel einfacher macht. Nachdem Sie Ihr Modell installiert und ausgeführt haben, werden Sie eine Registerkarte mit einem Konsolensymbol namens „Entwickler“ bemerken. Ich weiß, es klingt zunächst nicht besonders aufregend, aber warten Sie, denn es wird besser. Diese Registerkarte enthält ein praktisches CURL-Beispiel, das Ihnen genau zeigt, wie Sie Ihr lokales Modell verwenden. Und, würden Sie es nicht wissen, es kommt Ihnen ziemlich bekannt vor!

curl http://localhost:1234/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "llama-3.1-8b-lexi-uncensored-v2",
    "messages": [
      { "role": "system", "content": "Always answer in rhymes. Today is Thursday" },
      { "role": "user", "content": "What day is it today?" }
    ],
    "temperature": 0.7,
    "max_tokens": -1,
    "stream": false
}'
Nach dem Login kopieren

Sieht ziemlich bekannt aus, oder? Dies ist die lokale Version dessen, was wir gerade gesehen haben. Sie erhalten das gleiche Setup wie die OpenAI-API-Anfrage, außer dass sie auf Ihrem lokalen Computer ausgeführt wird. Außerdem hat es ein wenig Flair – wie die Systemaufforderung „Immer in Reimen antworten“. Poesie, irgendjemand?

Was ist mit Python? Wir haben Sie.

Wenn Sie lieber mit Python arbeiten (und seien wir ehrlich, wer tut das nicht?), können Sie dieselbe Anfrage mit dem Anfragemodul von Python wie folgt senden:

import requests
import json

url = "http://localhost:1234/v1/chat/completions"

headers = {
    "Content-Type": "application/json"
}

data = {
    "model": "llama-3.1-8b-lexi-uncensored-v2",
    "messages": [
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "What is the capital of France?"}
    ],
    "temperature": 0.7,
    "max_tokens": -1,
    "stream": False
}

response = requests.post(url, headers=headers, data=json.dumps(data))

if response.status_code == 200:
    result = response.json()
    print(result["choices"][0]["message"]["content"])
else:
    print(f"Error: {response.status_code}")
Nach dem Login kopieren

Und voilà! Sie sind jetzt bereit, Anfragen an Ihr lokales LLM zu senden, genau wie Sie es mit einer kommerziellen API tun würden. Machen Sie weiter, testen Sie es, brechen Sie es, bringen Sie es zum Reimen – die Welt (oder zumindest Ihr Modell) liegt Ihnen zu Füßen.

Genießen!

Das obige ist der detaillierte Inhalt vonKurzanleitung zum Ausführen eines lokalen LLM und zum Stellen von API-Anfragen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage