binary16 değerlerini çözümleme
İşaretsiz 16 bitlik bir binary16 sözcüğünü sayısal değere çöz.
from math import copysign, ldexp
def binary16_value(word):
if type(word) is not int or not 0 <= word <= 65535:
raise ValueError("binary16.word")
sign = -1.0 if word & 0x8000 else 1.0
exponent, fraction = (word >> 10) & 31, word & 1023
if exponent == 31:
return copysign(float("nan") if fraction else float("inf"), sign)
value = ldexp(fraction, -24) if exponent == 0 else ldexp(1024+fraction, exponent-25)
return copysign(value, sign)| Uygulamadan önce inceleyin | Gerçek davranışı beklenen sonuçla karşılaştırın. Bir kontrol başarısız olursa yeni değişikliklerden önce nedenini araştırın. |
|---|---|
| Modeller | Temel URL ve gerekiyorsa API anahtarıyla OpenAI uyumlu veya Anthropic endpoint yapılandırın. Bağlantıyı test edin. Yerel model sunucusu çalışıyor olmalıdır; uzak araçlar ayrıca veri aktarabilir. |
| Proje | İşaretli sıfırları, alt normal sayıları, sonsuzlukları ve NaN değerlerini dene, NaN yükünü korumadan Boolean veya aralık dışı sözcükleri reddet. |
from math import copysign, ldexp
def binary16_value(word):
if type(word) is not int or not 0 <= word <= 65535:
raise ValueError("binary16.word")
sign = -1.0 if word & 0x8000 else 1.0
exponent, fraction = (word >> 10) & 31, word & 1023
if exponent == 31:
return copysign(float("nan") if fraction else float("inf"), sign)
value = ldexp(fraction, -24) if exponent == 0 else ldexp(1024+fraction, exponent-25)
return copysign(value, sign)Kompakt sayısal biçimleri sıradan değerlerin ötesinde inceleyin
HalfJunia, gösterime duyarlı kaynak değişiklikleri üzerinde çalışmak için Windows yapay zekâ kodlama yazılımıdır. Çözümlenen bir değer yanlış görünüyorsa özgün sözcüğü, gözlenen sonucu ve beklenen yorumu proje görüşmesine getirin. Özel değerlere de hizmet edebilen bir dalı değiştirmeden önce bağlı modelden ilgili kaynağı incelemesini isteyin.
Örneğin binary16 çözümleme görevi, işaretli sıfırın, alt normal değerlerin, sonsuzlukların ve NaN değerlerinin açıkça ele alınmasını gerektirebilir. Girdinin işaretsiz 16 bitlik bir sözcük olduğunu ve NaN yüklerini korumanın gereksinim dışında olup olmadığını belirtin. Böylece görev, inceleyenin önerilen uygulama ve çağıran kodla karşılaştırabileceği sınırlı bir sözleşmeye sahip olur.
Kendi ortamınızda her kategori için temsili sözcükleri kontrol edin. İşaretli sıfır için işareti gerçekten ayırt eden bir gözlem; NaN için sıradan eşitlik yerine uygun kategori kontrolü kullanın. Boolean veya aralık dışı girdilerin reddini ayrı inceleyin. Birkaç tanıdık sonlu değer yararlıdır ancak gözden kaçması en olası dalları çalıştırmaz.
HalfJunia, gerektiğinde kimlik bilgileriyle desteklenen OpenAI uyumlu veya Anthropic uç noktalarına bağlanır. Sağlayıcınız filtresiz bir yapay zekâ modeli sunduğunda bunu kodlama görüşmesi için seçebilirsiniz. Kısıtlamaları, bağlam kapasitesi ve araçları modele ve sunucuya bağlıdır; açıklaması da hâlâ doğrulanması gereken bir öneridir.
Sayısal biçim incelemesine hazırlık
Beklenmeyen çözümlenmiş değere hangi kanıtlar eşlik etmeli?
Tam girdi sözcüğünü, beklenen kategoriyi, gözlenen sonucu ve onu kullanan çağıran kodu verin. Yalnızca yuvarlanmış görüntü dizgesine dayanmayın. Kaynak tartışması, gösterimin işlenmesini arayüzdeki sonraki biçimlendirmeden ayıracak ayrıntıyı içermelidir.
Sıradan eşitlik her özel değeri doğrulayabilir mi?
Hayır. Sıfır için işarete duyarlı gözlem ve uygun NaN testi dahil kategoriye uygun kontroller seçin. Beklentileri görevde belirtip gerçek ortamınızda çalıştırın; böylece önerilen kod çözücü sıradan sonlu eşitliğin ötesinde değerlendirilir.
NaN yüklerinin korunduğu varsayılmalı mı?
Yalnızca uygulamanın desteklediği açık bir gereksinimse. Örnek çözümleme görevi yükleri korumaz. Tüketici kodunuz bunlara ihtiyaç duyuyorsa yalnızca sayısal kategori veya değer döndüren bir öneriyi kabul etmeden önce bu ayrı sözleşmeyi açıklayın.
Reddetme testlerine Boolean girdi neden eklenmeli?
Bazı dillerde tür ilişkileri geniş bir tamsayı kontrolünden geçmesine izin verebilir. Sözleşmeniz gerçek bir sözcük değeri gerektiriyor ve Boolean değerlerini dışlıyorsa bunu açıkça söyleyin. Gayriresmî tür açıklamasına dayanmak yerine bu ayrımı kabul edilen aralıkla birlikte doğrulayın.
HalfJunia · Güncellendi 2026-10-25