Skip to content

يوفر Ollama توافقًا مع واجهة برمجة تطبيقات Anthropic Messages لمساعدتك في ربط التطبيقات الحالية بـ Ollama، بما في ذلك أدوات مثل Claude Code.

الاستخدام

متغيرات البيئة

لاستخدام Ollama مع الأدوات التي تتوقع واجهة برمجة تطبيقات Anthropic (مثل Claude Code)، قم بتعيين متغيرات البيئة هذه:

shell
export ANTHROPIC_AUTH_TOKEN=ollama  # مطلوب ولكن يتم تجاهله
export ANTHROPIC_BASE_URL=http://localhost:11434

مثال بسيط لـ /v1/messages

مثال على البث المتدفق

مثال استدعاء الأدوات

الاستخدام مع Claude Code

يمكن تكوين Claude Code لاستخدام Ollama كخلفية له.

النماذج الموصى بها

لحالات الاستخدام المتعلقة بالبرمجة، يوصى باستخدام نماذج مثل glm-4.7 و minimax-m2.1 و qwen3-coder.

قم بتنزيل النموذج قبل الاستخدام:

shell
ollama pull qwen3-coder

ملاحظة: Qwen 3 coder هو نموذج بمعاملات 30B يتطلب ما لا يقل عن 24 جيجابايت من ذاكرة الفيديو (VRAM) للتشغيل بسلاسة. مطلوب المزيد من الذاكرة لأطوال السياق الأطول.

shell
ollama pull glm-4.7:cloud

الإعداد السريع

shell
ollama launch claude

سيطلب منك هذا الخيار تحديد نموذج، وتكوين Claude Code تلقائيًا، ثم تشغيله. للتكوين دون تشغيل:

shell
ollama launch claude --config

الإعداد اليدوي

قم بتعيين متغيرات البيئة ثم تشغيل Claude Code:

shell
ANTHROPIC_AUTH_TOKEN=ollama ANTHROPIC_BASE_URL=http://localhost:11434 claude --model qwen3-coder

أو قم بتعيين متغيرات البيئة في ملف تعريف الصدفة الخاص بك:

shell
export ANTHROPIC_AUTH_TOKEN=ollama  # مطلوب ولكن يتم تجاهله
export ANTHROPIC_BASE_URL=http://localhost:11434

ثم قم بتشغيل Claude Code مع أي نموذج من نماذج Ollama:

shell
claude --model qwen3-coder

نقاط النهاية

/v1/messages

الميزات المدعومة

  • [x] الرسائل
  • [x] البث المتدفق
  • [x] موجهات النظام
  • [x] المحادثات متعددة الأدوار
  • [x] الرؤية (الصور)
  • [x] الأدوات (استدعاء الوظائف)
  • [x] نتائج الأدوات
  • [x] التفكير / التفكير الموسع

حقول الطلب المدعومة

  • [x] model
  • [x] max_tokens
  • [x] messages
    • [x] محتوى النص content
    • [x] محتوى الصور content (base64)
    • [x] مصفوفة من كتل المحتوى
    • [x] كتل tool_use
    • [x] كتل tool_result
    • [x] كتل thinking
  • [x] system (سلسلة أو مصفوفة)
  • [x] stream
  • [x] temperature
  • [x] top_p
  • [x] top_k
  • [x] stop_sequences
  • [x] tools
  • [x] thinking
  • [ ] tool_choice
  • [ ] metadata

حقول الاستجابة المدعومة

  • [x] id
  • [x] type
  • [x] role
  • [x] model
  • [x] content (كتل النص، و tool_use، و thinking)
  • [x] stop_reason (end_turn، max_tokens، tool_use)
  • [x] usage (input_tokens، output_tokens)

أحداث البث المتدفق

  • [x] message_start
  • [x] content_block_start
  • [x] content_block_delta (text_delta، input_json_delta، thinking_delta)
  • [x] content_block_stop
  • [x] message_delta
  • [x] message_stop
  • [x] ping
  • [x] error

النماذج

يدعم Ollama كلاً من النماذج المحلية والنماذج السحابية.

النماذج المحلية

قم بسحب نموذج محلي قبل الاستخدام:

shell
ollama pull qwen3-coder

النماذج المحلية الموصى بها:

  • qwen3-coder - ممتاز لمهام البرمجة
  • gpt-oss:20b - نموذج عام قوي

النماذج السحابية

تتوفر النماذج السحابية فورًا دون الحاجة إلى سحبها:

  • glm-4.7:cloud - نموذج سحابي عالي الأداء
  • minimax-m2.1:cloud - نموذج سحابي سريع

أسماء النماذج الافتراضية

للأدوات التي تعتمد على أسماء نماذج Anthropic الافتراضية مثل claude-3-5-sonnet، استخدم الأمر ollama cp لنسخ اسم نموذج موجود:

shell
ollama cp qwen3-coder claude-3-5-sonnet

بعد ذلك، يمكن تحديد اسم النموذج الجديد في الحقل model:

shell
curl http://localhost:11434/v1/messages \
    -H "Content-Type: application/json" \
    -d '{
        "model": "claude-3-5-sonnet",
        "max_tokens": 1024,
        "messages": [
            {
                "role": "user",
                "content": "Hello!"
            }
        ]
    }'

الاختلافات عن واجهة برمجة تطبيقات Anthropic

اختلافات في السلوك

  • يتم قبول مفتاح API ولكنه لا يتم التحقق من صحته
  • يتم قبول رأس anthropic-version ولكنه لا يتم استخدامه
  • تعد عدادات الرموز تقريبيات تعتمد على الـ tokenizer الخاص بالنموذج الأساسي

الميزات غير المدعومة

تتضمن ميزات واجهة برمجة تطبيقات Anthropic التالية غير المدعومة حاليًا:

الميزةالوصف
/v1/messages/count_tokensنقطة نهاية حساب الرموز
tool_choiceفرض استخدام أداة معينة أو تعطيل الأدوات
metadataبيانات وصفية للطلب (user_id)
التخزين المؤقت للموجهاتكتل cache_control لتخزين بادئات الموجهات مؤقتًا
واجهة برمجة تطبيقات الدفعات/v1/messages/batches للمعالجة الدفعية غير المتزامنة
الاقتباساتكتل محتوى citations
دعم ملفات PDFكتل محتوى document تحتوي على ملفات PDF
الأخطاء المرسلة من الخادمأحداث error أثناء البث المتدفق (ترجع الأخطاء حالة HTTP)

الدعم الجزئي

الميزةالحالة
محتوى الصوريتم دعم الصور بتنسيق Base64؛ لا يتم دعم الصور عبر عنوان URL
التفكير الموسعدعم أساسي؛ يتم قبول budget_tokens ولكن لا يتم فرضها