tr ▾
Deneme anahtarı kazanın

Abliterated Modellerle İlgili Yaygın Hataları Halletmek

Ablirete edilmiş modellerde sorun giderme genellikle uncensored LLM'lerin yapıyı, bağlamı ve akışı standart ticari API'lerden farklı şekilde nasıl işlediğini anlamaya dayanır. JSON doğrulamasını, token limitlerini ve parametre ayarlarını ele alarak, beklenmeyen reddetmeler veya bozuk formatlar olmadan güvenilir NSFW rol yapma veya kodlama sağlayabilirsiniz.

Son güncelleme

Özet

Neden JSON yanıtınız doğrulamayı geçemiyor

Model kod bloğunun dışına konuşma metni eklediğinde JSON ayrıştırma başarısız olur. Uncensored modeller doğal dil akışını önceliklendirir, bu nedenle ham verinin önüne veya arkasına genellikle "İşte JSON" gibi ifadeler eklerler. Bu, yalnızca nesne bekleyen sıkı parser'ları bozar.

Şu response_format parametresi {"type": "json_object"}. Bu, modelin yalnızca geçerli JSON çıktısı vermesini zorlar. Kodunuzdaki regex temizleme betiklerine olan ihtiyacı ortadan kaldırır. Ancak, modele kısıt getirildiği için her istekte daha fazla token tükettiğini unutmayın.

  • Ayarla response_format için json_object istem yükünüzde.
  • Sistem promptunuzun JSON çıktısı istediğinden açıkça emin olun.
  • Model kayarsa, virgül veya küçük sözdizimi hatalarını zarifçe yönetin.
from openai import OpenAI

client = OpenAI(base_url="https://api.abliteratedllmonline.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)

Bağlam penceresi limitlerini doğru şekilde işleme

Bağlam pencereniz hem giriş hem de çıkış dahil olmak üzere toplam 100.000 token kapasitesine sahiptir. Uzun bir geçmiş gönderirseniz, maksimum çıktı uzunluğunu azaltmanız gerekir. Varsayılan maksimum çıktı, aksi belirtilmedikçe 2.048 token'dır.

Kalan token sayısını 100,000'den girdi boyutunu çıkararak hesaplayın. Rol yapma yapıyorsanız, sistem istemini kısa tutun. Sadece son konuşma dönüşlerini API isteğinde saklayın. Eski bağlam özetlenebilir veya kısaltılabilir. Bu, üretim sırasında sert limite takılmayı önler.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.abliteratedllmonline.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);

Uncensored modellerle fonksiyon çağırma hataları

Fonksiyon çağırma, modelin araç tanımlarını görmezden gelmesi veya geçersiz argümanlar döndürmesi durumunda başarısız olur. Uncensored modeller katı araç kullanımından ziyade yaratıcı yanıtları önceliklendirebilir. Şemanızda mevcut olmayan parametreleri uydurabilirler.

Araçlarınızı tools dizi. Kullanın tool_choice belirli bir davranışı zorlamak için. Model bir aracı çağırmayı reddederse, sistem istemindeki çelişkili talimatları kontrol edin. Araç adlarının ve açıklamalarının belirsiz olmadığını sağlayın. Entegrasyonu doğrulamak için önce basit sorgularla test edin.

  • Araç adlarını ve açıklamalarını net bir şekilde belirtin.
  • Kullan tool_choice çağrıyı kontrol etmek için.
  • Yürütmeden önce argümanları şemanıza karşı doğrula.
curl https://api.abliteratedllmonline.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List the python dependencies for this flask app"}]
  }'

Akış kesintileri ve SSE işleme

Sunucu Tarafından Gönderilen Olaylar (SSE) üzerinden akış (streaming), istemci bağlantıyı koparırsa veya ağda aksaklık yaşanırsa tokenları kaybedebilir. Son chunk, token kullanım istatistiklerini içerir. Giriş ve çıktı sayılarını almak için bu chunk'ı ayrıştırmanız gerekir.

Yeniden bağlanma mantığını işleyen sağlam bir SSE istemcisi uygulayın. Her parçanın veri içerdiğinden emin olmayın. Bazı parçalar boş olabilir veya yalnızca boşluk içerebilir.Kredi bakiyenizi veya token sayaçlarınızı güncellemek için son parçayı işleyin. Bu, doğru faturalandırma ve kullanım takibini sağlar.

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)

NSFW çıktısını etkileyen Sıcaklık ayarları

Sıcaklık, modelin çıktısındaki rastgeleliği kontrol eder. 0.8 veya 0.9 gibi daha yüksek değerler yaratıcılığı ve öngörülemezliği artırır. 0.2 gibi daha düşük değerler çıktıyı daha belirleyici ve odaklı hale getirir. NSFW rol yapma senaryolarında daha yüksek sıcaklıklar, daha çeşitli ve yoğun yanıtlar üretir.

En uygun dengeyi bulmak için farklı değerlerle deney yapın. Çok yüksek bir sıcaklık tutarsız veya tekrarlayan metne neden olabilir. Çok düşük bir sıcaklık robotik veya soluk diyaloglara neden olabilir. İstenen tona ve tutarlılığa göre ayarlayın. Filtresiz model, daha yüksek yaratıcılık ayarlarına iyi yanıt verir.

  • Yaratıcı rol yapma için 0.7-0.9 kullanın.
  • Gerçekçi veya kodlama görevleri için 0.2-0.5 kullanın.
  • Ayarları yaparken çıktı kalitesini izleyin.

Rol yapma üretiminde Top P ve çeşitlilik

Top P (nükleus örnekleme), modeli yalnızca olasılık kütlesinin en üst yüzdesini dikkate almaya sınırlar. Çeşitliliği kontrol etmek için sıcaklıkla çalışır. Düşük bir Top P değeri, çıktıyı daha öngörülebilir kılar. Yüksek bir değer, daha çeşitli kelime seçimlerine olanak tanır.

İnce ayarlı kontrol için Top P'yi sıcaklıkla birleştirin. Örneğin, yüksek sıcaklık ve düşük Top P, yaratıcı ancak odaklanmış metinler üretebilir. Bu, karakter sesini korurken spontane eylemlere izin vermek için kullanışlıdır. Anlatım tarzınıza uygun farklı kombinasyonları test edin.

from openai import OpenAI

client = OpenAI(base_url="https://api.abliteratedllmonline.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)

Token limitlerini ve maliyetleri anlama

Token kullanımı ön ödemeli kredinizi doğrudan etkiler. API, milyon başına giriş tokenları için $0.15 ve milyon başına çıkış tokenları için $0.50 ücretlendirme yapar. Çıkış tokenları daha pahalıdır çünkü modelin işini temsil ederler. Akış (streaming) maliyeti değiştirmez; oluşturulan tüm tokenlar için ödersiniz.

Beklenmedik ücretlerden kaçınmak için token kullanımınızı izleyin. Son SSE chunk'ı kesin token sayısını sağlar. Bunu yerel bakiyenizi veya faturalandırma panelinizi güncellemek için kullanın. Hatalar ve reddetmeler ücretsizdir, bu nedenle yalnızca başarılı tamamlamalar için ödeme yaparsınız. Bu kullanım ödemeli model, asla fazla ödeme yapmamanızı sağlar.

  • Giriş tokenları milyon başına $0.15'tir.
  • Çıktı tokenları milyon başına $0.50 maliyetindedir.
  • Reddetmeler ve hatalar ücretsizdir.

API anahtarı yenileme ve istek limitleri

Her hesapta aynı anda yalnızca bir aktif API anahtarı bulunur. Anahtarınızı yeniden oluşturursanız, eski anahtar hemen geçersiz olur. Bu, güvenliği sağlar ancak istemcilerinizi hızlıca güncellemenizi gerektirir. Hız limitleri dakikada 300 istek ve anahtar başına 8 eş zamanlı istek olarak ayarlanmıştır.

Bu limitleri aşmak HTTP 429 hatalarına neden olur. Yeniden deneme mantığınızda üssel geri çekilme uygulayın. İstek hacminizi limitler içinde kalmak için izleyin. Daha yüksek verimlilik gerekiyorsa, iş yükünüzü birden fazla hesap arasında bölüşmeyi veya prompt boyutlarınızı optimize etmeyi düşünün. Anahtar, kayıttan hemen sonra gösterilir, bu yüzden güvenli tutun.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.abliteratedllmonline.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);

Yaygın HTTP hatalarında sorun giderme

HTTP hataları, isteğiniz veya sunucu yanıtıyla ilgili sorunları gösterir. Yaygın hatalar arasında 400 Bad Request, 401 Unauthorized ve 429 Too Many Requests bulunur. Bir 400 hatası genellikle hatalı JSON veya geçersiz parametreler anlamına gelir. Bir 401 hatası, yanlış veya süresi dolmuş bir API anahtarı olduğunu gösterir.

İstek üstbilgilerinizi ve yükünüzü sözdizimi hataları için kontrol edin. API anahtarınızın doğru ve aktif olduğundan emin olun. Bir 429 hatası alırsanız bekleyin ve üssel geri çekilme ile yeniden deneyin. Bu hataları otomatik olarak işlemek için resmi OpenAI SDK'larını kullanın. Net hata mesajları ve yeniden deneme mantığı sağlarlar. Bu, geliştirme süresini azaltır ve güvenilirliği artırır.

  • 400: JSON sözdizimini ve parametreleri kontrol edin.
  • 401: API anahtarı geçerliliğini doğrulayın.
  • 429: Geri çekilme ile yeniden deneme mantığı uygulayın.
curl https://api.abliteratedllmonline.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List the python dependencies for this flask app"}]
  }'

Sık sorulan sorular

abliterated modelleri standart OpenAI SDK'sı ile kullanabilir miyim?

Evet, API'miz tamamen OpenAI uyumludur. Base URL'yi HTTPS://api.abliteratedllmonline.com/v1 olarak değiştirip API anahtarınızı sağlayarak resmi OpenAI SDK'larını kullanabilirsiniz. Gönderilecek model kimliği "uncensored" olmalıdır. Bu, mevcut kodunuzla sorunsuz entegrasyon sağlar.

Uncensored model, içeriği reddediyor mu?

Model, yasal yetişkin kullanımı için sansürsüz olacak şekilde tasarlanmıştır. Tartışmalı, kurgusal veya yetişkinlere yönelik (NSFW) konularda reddiyat yapmaz. Ancak katı bir içerik sınırı vardır: küçük yaşlılarla cinsel içerik içeren istekler her zaman reddedilir. Bu, hizmetimizdeki tek katı reddiyattır.

Token kullanımı ile akışı nasıl yönetebilirim?

Sunucu Tarafından Olaylar (SSE) kullanırken, son parça token kullanım istatistiklerini içerir. Girdi ve çıktı token sayılarını elde etmek için bu son parçayı ayrıştırmalısınız. Bu, kredi kullanımınızı doğru bir şekilde izlemenizi ve buna göre faturalandırılmanızı sağlar. Hatalar ve reddetmeler ücretsizdir, bu nedenle yalnızca başarılı tamamlamalar için ödeme yaparsınız.

Bağlam penceresi boyutu nedir?

Bağlam penceresi 100.000 token'dır; bu hem prompt'u hem de tamamlamayı içerir. İstek başına maksimum çıktı 16.000 token'dır veya max_tokens parametresi belirtilmezse 2.048 token'dır. Bu geniş pencere, derin konuşma geçmişi ve uzun belge işleme imkanı tanır.

API Anahtarınızı Alın

Kaydolun, anahtarınızı alın ve temel URL'yi güncelleyin. İşlem bu kadar.