Metadata-Version: 2.4
Name: bxlai
Version: 1.0.6
Summary: A small Python client for Kilo AI models
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.25.0

# bxlai

إصدار `1.0.6` من مكتبة Python باسم تثبيت `bxlai` واستيراد `bxAI`. تعتمد على Kilo API وتضمّن كتالوج النماذج داخل `bxAI.py`؛ لا تحتاج `models.json` أو أي ملفات بيانات وقت التشغيل.

## التثبيت

```bash
pip install --upgrade bxlai
```

Python 3.9+، وAndroid/Pydroid وTermux وWindows وLinux. الاعتماد الوحيد وقت التشغيل هو `requests`.

## مثال سريع

```python
from bxAI import *

print(version())
print(Ai(1, "هلو، جاوبني باللهجة العراقية"))
print(model_info(1))
MODLES()
```

`Ai(1, ...)` يختار `kilo-auto/free` ويمكن استدعاؤه دون API key. تتطلب النماذج المصنفة `TOKEN` مفتاح Kilo API: `AiT("YOUR_KILO_TOKEN", 25, "Hello")`. لا تضع مفتاحك في كود منشور أو ترسله لأحد.

```python
from getpass import getpass
from bxAI import AiT

token = getpass("Kilo API token: ")
print(AiT(token, 25, "اكتب جواباً مختصراً"))
```

## الدوال

- `Ai(model_number, question)`: يستدعي نموذجاً `FREE` بلا مفتاح.
- `AiT(token, model_number, question)`: يستدعي نموذجاً باستخدام Kilo API token.
- `MODLES()`: يعرض النماذج المرقمة بصفحات؛ Enter للتالي و`q` للخروج.
- `models()`: اسم بديل لـ`MODLES()`.
- `version()`: يعيد `1.0.6`.
- `model_info(number)`: يعيد معلومات عامة دون إظهار model ID الحقيقي.

`FREE` تشير إلى السعر الصفري في كتالوج Kilo وقت بناء هذه النسخة. الوصول المجهول محدود وفق سياسة Kilo، والتوفر قد يتغير. Auto Free يوجّه الطلبات ديناميكياً إلى مزودين مختلفين؛ قد تسجل بعض الجهات الطلبات وتستخدمها لتحسين الخدمة. **لا ترسل معلومات شخصية أو سرية إلى Auto Free.**

## API وسلوك الإجابة

تستخدم المكتبة نقطة النهاية المتوافقة مع مثال Kilo: `https://api.kilo.ai/api/openrouter/chat/completions`، مع `max_tokens=1024` وtimeout. إذا لم يتضمن رد الخدمة نصاً في `choices[0].message.content` (مثلاً `content: null` مع `finish_reason=length`) فلن تعيد المكتبة نصاً فارغاً؛ ستعيد رسالة `[BXAI ERROR]` تشرح أن النموذج لم يرجع إجابة نصية. تُعالج كذلك 401/403/404/429/5xx وtimeout وأخطاء الاتصال وJSON. يفعّل `BXAI_DEBUG=1` تفاصيل تشخيصية دون تسجيل tokens أو prompt أو الرد.

يصف توثيق Kilo الرسمي حالياً [Gateway API](https://kilo.ai/docs/gateway/api-reference) والنماذج المجانية [هنا](https://kilo.ai/docs/gateway/models-and-providers). جرى اختبار المسار الوارد من المستخدم أثناء إعداد هذه النسخة؛ قد تتغير المسارات أو شروط الخدمة لاحقاً.

## ملفات الإصدار والنشر

```bash
rm -rf build dist *.egg-info
python -m pip install --upgrade build twine
python -m build
python -m twine check dist/*
python -m twine upload --username __token__ dist/*
```

إدخال API token يتم عند الطلب؛ لا تكتبه ضمن الأمر أو تحفظه في المستودع.
