رؤية YOLO لعام 2026:

واجهة النماذج اللغوية الكبيرة من Ultralytics#

LLM هي واجهة برمجية صغيرة لاستدعاء نماذج اللغة والرؤية من خلال واجهة برمجة تطبيقات متوافقة مع OpenAI. تقوم بإعداد مدخلات النص أو الصور، وتمرير وسائط الطلب إلى حزمة البرمجة الرسمية لـ Python الخاصة بـ OpenAI، وإرجاع كائن الاستجابة الأصلي للحزمة البرمجية. هذا يسهل إضافة الاستدلال اللغوي أو البصري بجوار خط أنابيب YOLO دون الحاجة إلى تغليف أنواع الاستجابة الخاصة بمزود معين.

واجهة برمجة التطبيقات الافتراضية هي responses؛ استخدم api="chat.completions" للمزودين الذين يطبقون إكمال الدردشة فقط.

التثبيت#

قم بتثبيت Ultralytics مع اعتمادية النماذج اللغوية الكبيرة الاختيارية:

pip install "ultralytics[llm]"

بالنسبة لـ OpenAI، قم بتعيين مفتاح واجهة برمجة التطبيقات في بيئة العمل:

export OPENAI_API_KEY="your-api-key"

واجهة برمجة تطبيقات الاستجابات#

واجهة برمجة تطبيقات الاستجابات هي الواجهة الافتراضية. قم بتمرير موجه وقراءة output_text:

from ultralytics import LLM

llm = LLM("gpt-5.6-luna")
response = llm("What is YOLO?")
print(response.output_text)

مدخلات متعددة الوسائط#

قم بتمرير مسار، أو عنوان URL لـ HTTP، أو عنوان URI للبيانات، أو مصفوفة NumPy، أو صورة PIL من خلال image:

from ultralytics import LLM

llm = LLM("gpt-5.6-luna")
response = llm("What is happening in this image?", image="https://ultralytics.com/images/bus.jpg")
print(response.output_text)

يتم ترميز الملفات المحلية وكائنات الصور كعناوين URI لبيانات JPEG. تستخدم مصفوفات NumPy ترتيب قنوات BGR الخاص بـ OpenCV. يتم التعامل مع النص الممرر كـ source، مثل llm("bus.jpg")، كنص؛ استخدم وسيط image لإرسال صورة.

استخدم prompt لتعليمات مشتركة بين كل طلب:

llm = LLM("gpt-5.6-luna", prompt="Answer in one sentence.")
response = llm("Describe this image.", image="bus.jpg")

إكمال الدردشة#

حدد إكمال الدردشة عندما تتطلب نقطة النهاية ذلك، وقرء شكل استجابتها الأصلية:

from ultralytics import LLM

llm = LLM("gpt-5.6-luna", api="chat.completions")
response = llm("What is non-maximum suppression?")
print(response.choices[0].message.content)

تقبل نفس الواجهة المدخلات متعددة الوسائط:

response = llm("Describe this image.", image="bus.jpg")
print(response.choices[0].message.content)

قم بتمرير كائنات الرسائل الأصلية عندما تحتاج إلى سجل المحادثة. يتم إعادة توجيهها دون تغيير.

البث والاستدعاءات غير المتزامنة#

تتمرر وسائط طلب حزمة البرمجة دون تغيير، بما في ذلك stream=True:

llm = LLM("gpt-5.6-luna")
for event in llm("Explain object detection.", stream=True):
    if event.type == "response.output_text.delta":
        print(event.delta, end="", flush=True)

استخدم async_call للطلبات المتزامنة:

import asyncio

from ultralytics import LLM

llm = LLM("gpt-5.6-luna")

async def main():
    response = await llm.async_call("What is YOLO?")
    print(response.output_text)

asyncio.run(main())

المزودون المتوافقون مع OpenAI#

LLM تعمل مع المزودين الذين يوفرون واجهة برمجة تطبيقات استجابات أو إكمال دردشة متوافقة مع OpenAI، بما في ذلك DeepSeek، وKimi، وZ.AI GLM، وOpenRouter. قم بتعيين base_url الخاص بالمزود، واسم النموذج، ومفتاح واجهة برمجة التطبيقات:

from ultralytics import LLM

llm = LLM(
    "provider-model",
    api="chat.completions",
    base_url="https://provider.example/v1",
    api_key="your-api-key",
)
response = llm("What tasks does YOLO support?")
print(response.choices[0].message.content)

يعمل نفس التكوين مع الخوادم المحلية المتوافقة. تختلف أسماء النماذج، ودعم الصور، ووسائط الطلب، واجهات برمجة التطبيقات المدعومة حسب المزود، لذا تحقق من وثائقه المرتبطة.

الجمع بين YOLO ونموذج لغوي كبير#

قم بتشغيل YOLO أولاً، ثم استدعِ النموذج اللغوي الكبير فقط عند اكتشاف شخص:

from ultralytics import LLM, YOLO

yolo = YOLO("yolo26n.pt")
llm = LLM("gpt-5.6-luna")
image = "https://ultralytics.com/images/bus.jpg"

result = yolo(image)[0]
# Call the LLM only when YOLO detects a person.
if any(result.names[int(cls)] == "person" for cls in result.boxes.cls):
    response = llm("Describe the scene.", image=image)
    print(response.output_text)

مرجع واجهة برمجة التطبيقات#

الوسيطالافتراضيالوصف
model"gpt-5.6-luna"معرف النموذج المرسل إلى نقطة النهاية المحددة
api"responses"تنسيق واجهة برمجة التطبيقات: "responses" أو "chat.completions"
base_urlNoneنقطة نهاية اختيارية متوافقة مع OpenAI
api_keyNoneمفتاح واجهة برمجة التطبيقات؛ وإلا فإن حزمة البرمجة تقرأ OPENAI_API_KEY
promptNoneالتعليمات المضافة قبل طلبات النص العادي والصور
**kwargsوسائط طلب حزمة البرمجة الافتراضية؛ تتجاوز وسائط كل استدعاء قيم المُنشئ المطابقة

source تقبل نصًا، أو قائمة رسائل أصلية، أو كائن صورة. image تقبل عنوان URL لصورة، أو عنوان URI للبيانات، أو مسارًا، أو مصفوفة NumPy، أو صورة PIL. استدعاء model() مع prompt مهيأ يرسل الموجه بمفرده.

LLM مخصصة للاستدلال فقط ولا يتم توفيرها عبر yolo CLI. وهي لا تطبق train، أو val، أو export، أو track، أو benchmark.

الأسئلة الشائعة#

  • LLM تستخدم واجهة برمجة تطبيقات الاستجابات افتراضيًا. قم بتعيين api="chat.completions" لنقاط نهاية إكمال الدردشة.

  • يمكنك استخدام OpenAI أو مزود آخر واجهة برمجة تطبيقات متوافقة، مثل DeepSeek، أو Kimi، أو Z.AI GLM، أو OpenRouter. استخدم اسم نموذج المزود، وعنوان URL الأساسي، ومفتاح واجهة برمجة التطبيقات.

  • قم بتمرير الموجه كوسيط أول ومسار محلي، أو عنوان URL، أو عنوان URI للبيانات، أو مصفوفة NumPy، أو صورة PIL من خلال image. يعتمد دعم الصور على النموذج والمزود المحددين.

  • لا. LLM توفر الاستدلال المتزامن وغير المتزامن فقط. استخدم Ultralytics YOLO لتدريب الرؤية الحاسوبية، والتحقق، والتنبؤ، والتصدير، والتتبع، والمقارنة المعيارية.

المساهمون

التعليقات