النقاط الرئيسية
Gemma 3 27B هو نموذج ذكاء اصطناعي متعدد الوسائط متطور، أصدرته Google، بـ 27 مليار معلمة ودعم أكثر من 140 لغة.
استدعاء الدوال عبر أدوات مثل LangChain يتيح التكامل السلس مع الأنظمة الخارجية، مما يوسع قدراته لتنفيذ مهام متخصصة مثل الحسابات وتحليل البيانات وأتمتة سير العمل.
بدمج القدرات متعددة الوسائط لـ Gemma 3 27B مع استدعاء الدوال، يتم تعزيز أتمتة المهام بشكل ملحوظ، مما يسمح بالتعاون المتقدم بين النصوص ومعالجة الصور والأدوات الخارجية. يتوفر النموذج كمصدر مفتوح، مما يشجع على التبني الواسع والابتكار عبر الصناعات.
Gemma 3 27B يمثل اختراقًا في مجال الذكاء الاصطناعي متعدد الوسائط، حيث يقدم قدرات لا مثيل لها في فهم وتوليد النصوص والصور. مع 27 مليار معلمة ودعم لأكثر من 140 لغة، يتعامل بسلاسة مع المهام المعقدة عبر الصناعات.
ما هو Gemma 3 27B؟
تاريخ الإصدار
12 مارس 2025
حجم النموذج
27 مليار معلمة
مفتوح المصدر
نعم (صادر عن Google)
دعم اللغات
أكثر من 140 لغة
بيانات التدريب
14 تريليون رمز
نقاط القوة
الرياضيات، البرمجة، اتباع التعليمات
القدرة متعددة الوسائط
نعم (يعالج الصور والنصوص، ويخرج نصوصًا)
نافذة السياق
128 ألف رمز
اختبار القدرة متعددة الوسائط لـ Gemma 3 27B
المطالبة: أخبرني كم مرة زادت درجة Elo من Gemma 2 27B إلى Gemma 3 27B؟

من Google
المخرجات: حدد الأرقام بدقة لكنه لم يحسب المضاعفات كما طلبت المطالبة؛ بل حسب الفرق فقط.
بناءً على الصورة، إليك الحساب:
- درجة Elo لـ Gemma 2 27B: 1220
- درجة Elo لـ Gemma 3 27B: 1338
الزيادة: 1338 - 1220 = 118
زادت درجة Elo بمقدار 118 نقطة من Gemma 2 27B إلى Gemma 3 27B.
معيار Gemma 3 27B
| المعيار | Gemma 3 27B | DeepSeek R1 | LLaMA 3.3 70B |
|---|---|---|---|
| درجة LMSys Elo | 1339 | ~1360 | ~1260 |
| MMLU-Pro | 67.5 | 84.0 | 66.4 |
| LiveCodeBench | 29.7 | 65.9 | ~29 |
| GPQA Diamond | 42.4 | 71.5 | 50.5 |
| MATH | 69.0 | 97.3 | 77.0 |

من Hugging Face
ما المشكلات التي يمكن حلها من خلال الجمع بين النماذج متعددة الوسائط واستدعاء الدوال؟
المشكلة 1
التعامل مع الملفات الكبيرة بموارد محدودة
على الرغم من أن نماذج LLM يمكنها معالجة الصور أو الفيديوهات مباشرة، فإن التعامل مع الملفات الكبيرة (مثل الفيديوهات الطويلة أو الصور عالية الدقة) قد يستهلك موارد كبيرة وقد يتجاوز نافذة سياق النموذج.
دور استدعاء الدوال: توزيع المهام المعقدة أو كثيفة الموارد على الأنظمة الخارجية، مما يسمح لنموذج LLM بالتركيز على التنسيق ودمج النتائج.
المشكلة 2
توسيع القدرات للوظائف المحددة
تركز نماذج LLM بشكل أساسي على فهم وتوليد المحتوى، ولكن في سيناريوهات معينة، قد يحتاج المستخدمون إلى وظائف أكثر تحديدًا (مثل إنشاء الرسوم البيانية، تحرير الصور، قص الفيديو) تتجاوز القدرات المدمجة لنموذج LLM.
دور استدعاء الدوال: توسيع قدرات نموذج LLM من خلال تمكينه من توليد أو تنفيذ مخرجات متخصصة عبر أدوات خارجية.
المشكلة 3
تحقيق تحليل أعمق باستخدام أدوات احترافية
بينما يمكن لنماذج LLM تحليل المدخلات متعددة الوسائط مثل النصوص والصور والفيديوهات، قد تفتقر إلى العمق اللازم لأداء المهام الاحترافية، مثل تحليل الصور الطبية أو تحرير الفيديو عالي الدقة.
دور استدعاء الدوال: تفويض المهام إلى أدوات أو واجهات برمجة تطبيقات احترافية، مما يضمن دقة أعلى وتحليلاً أعمق مما يمكن أن يوفره نموذج LLM وحده.
كيفية استخدام استدعاء الدوال لـ Llama 3.3 70B عبر Novita AI
الخطوة 1: احصل على مفتاح API وقم بتثبيته!
ادخل إلى صفحة “إدارة المفاتيح”، يمكنك نسخ مفتاح API كما هو موضح في الصورة.

الخطوة 2: استخدم Langchain لتنفيذ استدعاء الدوال
سننشئ تطبيقًا رياضيًا بسيطًا يمكنه إجراء عمليات الجمع والضرب.
💡 بينما يستخدم هذا الدليل LangChain للراحة، فإن تنفيذ استدعاء الدوال لا يتطلب أي إطار عمل محدد. المفتاح هو تصميم المطالبات الصحيحة لجعل النموذج يفهم ويستدعي الدوال بشكل صحيح. يُستخدم LangChain هنا فقط لتبسيط التنفيذ.
المتطلبات الأساسية
أولاً، قم بتثبيت الحزم المطلوبة:
pip install langchain-openai python-dotenv
إعداد البيئة
أنشئ ملف .env في جذر مشروعك وأضف مفتاح API الخاص بـ Novita AI:
NOVITA_API_KEY=your_api_key_here
الخطوة 3: خطوات التنفيذ
1. تعريف الأدوات
أولاً، لننشئ أداتين رياضيتين بسيطتين باستخدام مزخرف @tool من LangChain:
from langchain_core.tools import tool
@tool
def multiply(x: float, y: float) -> float:
"""Multiply two numbers together."""
return x * y
@tool
def add(x: int, y: int) -> int:
"""Add two numbers."""
return x + y
tools = [multiply, add]
2. إنشاء دالة تنفيذ الأداة
بعد ذلك، قم بتنفيذ دالة لتنفيذ الأدوات:
from typing import Any, Dict, Optional, TypedDict
from langchain_core.runnables import RunnableConfig
class ToolCallRequest(TypedDict):
name: str
arguments: Dict[str, Any]
def invoke_tool(
tool_call_request: ToolCallRequest,
config: Optional[RunnableConfig] = None
):
"""Execute the specified tool with given arguments."""
tool_name_to_tool = {tool.name: tool for tool in tools}
name = tool_call_request["name"]
requested_tool = tool_name_to_tool[name]
return requested_tool.invoke(tool_call_request["arguments"], config=config)
3. إعداد سلسلة LangChain
أنشئ سلسلة تستخدم نموذج LLM من Novita AI لاختيار وإعداد استدعاءات الأدوات:
from langchain_openai import ChatOpenAI
from langchain_core.output_parsers import JsonOutputParser
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.tools import render_text_description
def create_chain():
"""Create a chain that uses the specified LLM model to select and prepare tool calls."""
model = ChatOpenAI(
model="google/gemma-3-27b-it",
api_key=os.getenv("NOVITA_API_KEY"),
base_url="https://api.novita.ai/v3/openai",
)
rendered_tools = render_text_description(tools)
system_prompt = f"""\
You are an assistant that has access to the following set of tools.
Here are the names and descriptions for each tool:
{rendered_tools}
Given the user input, return the name and input of the tool to use.
Return your response as a JSON blob with 'name' and 'arguments' keys.
The `arguments` should be a dictionary, with keys corresponding
to the argument names and the values corresponding to the requested values.
"""
prompt = ChatPromptTemplate.from_messages(
[("system", system_prompt), ("user", "{input}")]
)
return prompt | model | JsonOutputParser()
4. إنشاء دالة المعالجة الرئيسية
قم بتنفيذ الدالة الرئيسية التي تعالج الاستعلامات الرياضية:
def process_math_query(query: str):
"""Process a mathematical query by using an LLM to select the appropriate tool and execute it."""
chain = create_chain()
message = chain.invoke({"input": query})
result = invoke_tool(message, config=None)
return message, result
5. مثال على الاستخدام
إليك كيفية استخدام التنفيذ:
if __name__ == "__main__":
message, result = process_math_query(
"meta-llama/llama-3.3-70b-instruct",
"what's 3 plus 1132"
)
print(result) # Output: 1135
يعيد Gemma 3 27B تعريف الذكاء الاصطناعي متعدد الوسائط بأداء رائد في الرياضيات والبرمجة والمهام القائمة على التعليمات. إن التكامل متعدد الوسائط وبيانات التدريب الواسعة تجعله أداة متعددة الاستخدامات للمطورين والباحثين.
الأسئلة الشائعة
ما هو Gemma 3 27B؟
Gemma 3 27B هو نموذج ذكاء اصطناعي متعدد الوسائط بـ 27 مليار معلمة، قادر على معالجة النصوص والصور ودعم أكثر من 140 لغة.
كيف يقارن Gemma 3 27B بسابقه؟
يظهر Gemma 3 27B تحسينات ملحوظة، بما في ذلك زيادة درجة Elo بمقدار 118 نقطة وأداء محسن في البرمجة والرياضيات والمهام متعددة الوسائط.
هل Gemma 3 27B مفتوح المصدر؟
نعم، Gemma 3 27B مفتوح المصدر، مما يشجع على الابتكار المجتمعي.
Novita AI هي منصة سحابية للذكاء الاصطناعي تقدم للمطورين طريقة سهلة لنشر نماذج الذكاء الاصطناعي باستخدام واجهة برمجة تطبيقات بسيطة، مع توفير وحدة معالجة رسومية سحابية ميسورة التكلفة وموثوقة للبناء والتوسع.
