NsfwLocalΤεκμηρίωση για Προγραμματιστές
Τεκμηρίωση API
Ξεκινήστε με την uncensored LLM API σε λίγα λεπτά. Χρησιμοποιήστε τυπικά OpenAI-compatible εργαλεία για να στείλετε αιτήματα κειμένου και λάβετε άμεσες, μη φιλτραρισμένες απαντήσεις.
Γρήγορη Έναρξη για το πρώτο σας αίτημα
Ξεκινήστε τη δημιουργία κειμένου αμέσως κατευθύνοντας τον πελάτη σας στο base URL μας και κάνοντας έγκριση με ένα παραγόμενο API key. Το interface ακολουθεί τυπικές συμβάσεις, οπότε μπορείτε να χρησιμοποιήσετε υπάρχοντα SDKs χωρίς να μάθετε ένα νέο πρωτόκολλο. Θα στέλνετε prompts στο uncensored το μοντέλο και λάβτε απαντήσεις κειμένου που δεν εφαρμόζουν τα τυπικά φίλτρα περιεχομένου για νόμιμη χρήση ενήλικων.
Ρυθμίστε τη βάση URL και το κλειδί
Ορίστε τις μεταβλητές περιβάλλοντός σας για να κατευθύνετε τα αιτήματα στο συγκεκριμένο endpoint μας. Αντικαταστήστε το placeholder key με αυτό που δημιουργήθηκε κατά την εγγραφή. Αυτό διασφαλίζει ότι όλες οι επόμενες κλήσεις χρησιμοποιούν την σωστή έκδοση του μοντέλου uncensored.
- Base URL:
https://api.nsfwlocalllm.com/v1 - Κεφαλίδα Auth:
Authorization: Bearer YOUR_API_KEY
Μπορείτε να επαληθεύσετε ότι το key σας λειτουργεί ελέγχοντας το endpoint των μοντέλων. Ένα έγκυρο key επιστρέφει αμέσως το διαθέσιμο model id.
Στείλτε μια αίτηση ολοκλήρωσης συνομιλίας
Στείλτε ένα τυπικό payload chat completion για να δημιουργήσετε κείμενο. Το σύστημα επεξεργάζεται την είσοδό σας και επιστρέφει την απάντηση του μοντέλου. Χρησιμοποιήστε το uncensored το ID του μοντέλου για να βεβαιωθείτε ότι χτυπάτε την μη φιλτραρισμένη έκδοση.
Η απάντηση περιλαμβάνει το παραγόμενο κείμενο και στατιστικά χρήσης tokens. Μπορείτε να το αναλύσετε απευθείας στη λογική της εφαρμογής σας.
curl https://api.nsfwlocalllm.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Send me the server uptime stats"}]
}'Ελέγξτε για τυπικούς κωδικούς κατάστασης HTTP για χειρισμό περιπτώσεων επιτυχίας ή αποτυχίας.
Ενεργοποιήστε τη ροή (streaming) για έξοδο σε πραγματικό χρόνο
Ροή αποκρίσεων για μείωση της αντιλαμβανόμενης καθυστέρησης για τους χρήστες σας. Ενεργοποιήστε τη ροή ρυθμίζοντας stream: true στο σώμα του αιτήματός σας. Το API επιστρέφει μια σειρά από Server-Sent Events (SSE) που περιέχουν μερικά tokens.
Συνδυάστε αυτά τα tokens στο côté client για να ανακατασκευάσετε το πλήρες μήνυμα. Αυτή η προσέγγιση είναι ιδανική για διεπαφές συνομιλίας όπου η άμεση ανατροφοδότηση έχει σημασία. Το τελικό γεγονός SSE περιέχει τη συνολική χρήση tokens για το αίτημα.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwlocalllm.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)Διαχειριστείτε σφάλματα σύνδεσης με επιδεξιότητα για να διασφαλίσετε μια ομαλή εμπειρία χρήστη.
Χρησιμοποιήστε JSON mode για δομημένα δεδομένα
Εξαναγκάστε το μοντέλο να επιστρέψει έγκυρο JSON για μηχανική κατανάλωση. Ρυθμίστε response_format για {"type": "json_object"} στην αίτησή σας. Αυτό μειώνει τα σφάλματα ανάλυσης και διασφαλίζει συνεπείς δομές δεδομένων.
Χρησιμοποιήστε αυτό για δημιουργία δομημένων prompts, εξαγωγή οντοτήτων ή κατασκευή δυναμικού περιεχομένου. Το μοντέλο συμμορφώνεται με τους περιορισμούς μορφής που παρέχονται στις οδηγίες συστήματος. Αυτό είναι κρίσιμο για αξιόπιστη ενσωμάτωση με άλλες υπηρεσίες.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwlocalllm.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);Επαληθεύστε την έξοδο JSON από την πλευρά σας για να πιάσετε περιπτώσεις ακραίας περίπτωσης.
Υλοποιήστε κλήση συναρτήσεων
Ορίστε εργαλεία για να επεκτείνετε τις δυνατότητες του μοντέλου. Δώστε ένα tools array με ορισμούς συναρτήσεων στο αίτημα. Το μοντέλο μπορεί να επιλέξει να καλέσει αυτές τις συναρτήσεις με βάση το πλαίσιο.
Αυτό επιτρέπει πολύπλοκες ροές εργασίας όπου το LLM αποφασίζει πότε να ανακτήσει δεδομένα ή να εκτελέσει ενέργειες. Λαμβάνετε τα ορίσματα της συνάρτησης στην απάντηση και τα εκτελείτε από την πλευρά σας. Δώστε τα αποτελέσματα πίσω στο μοντέλο για περαιτέρω σκέψη.
Ορίστε tool_choice για auto για ευέλικτη λήψη αποφάσεων. Αυτή η λειτουργία υποστηρίζει προηγμένα σενάρια roleplay που απαιτούν πρόσβαση σε εξωτερικά δεδομένα.
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)Frequently asked questions
Ποιο είναι το μέγεθος του παραθύρου συνάφειας;
Το παράθυρο συμφραζομένων είναι 100.000 tokens, καλύπτοντας την εντολή και την απάντηση. Αυτό επιτρέπει μακρές συνομιλίες και μεγάλα έγγραφα χωρίς απώλεια συμφραζομένων.
Τι συμβαίνει αν εξαντληθεί το πιστωτικό μου υπόλοιπο;
Οι αιτήσεις αποτυγχάνουν με κωδικό κατάστασης 402 όταν το προκαταβληθέν υπόλοιπό σας είναι ανεπαρκές. Μπορείτε να αποθερώσετε μέσω κρυπτονομισμάτων για να αναλάβετε την υπηρεσία αμέσως. Σφάλματα όπως τα όρια ρυθμού δεν καταναλώνουν υπόλοιπο.
Πώς διαχειρίζομαι όρια συχνότητας;
Η API επιβάλλει όριο 300 αιτήσεων ανά λεπτό ανά key. Αν το υπερβείτε, λαμβάνετε κωδικό κατάστασης 429. Εφαρμόστε exponential backoff στο client σας για να διαχειριστείτε αυτές τις καθυστερήσεις αποτελεσματικά.
Ανάκτηση του κλειδιού API σας στιγμιαία
Εγγραφείτε, αντιγράψτε το token, ενημερώστε τη βάση URL. Η ρύθμιση ολοκληρώθηκε.
Get API key