داشبورد توسعه‌دهنده
پرسش از هوش مصنوعی
پرسش از هوش مصنوعی

گسترش API بومی Gemini: پشتیبانی از تعبیه‌سازی و بهبود عملکرد

Date: 1404-06-28 / (2025-09-18)

خلاصه

AvalAI با افزودن پشتیبانی جامع از تعبیه‌سازی از طریق نقطه پایانی جدید embedContent API بومی Gemini v1beta را گسترش می‌دهد، ویژگی‌های بهینه‌سازی خاص وظیفه را معرفی می‌کند و بهبودهای عملکرد API شامل افزایش نرخ موفقیت و کاهش تاخیر را به عنوان بخشی از تلاش‌های بهبود عملکرد مداوم ما ارائه می‌دهد.


جزئیات

ما بهبودهایی را در API بومی Gemini v1beta اعلام می‌کنیم که قابلیت‌های تعبیه‌سازی را گسترش می‌دهد و در عین حال عملکرد بهبود یافته‌ای را در سراسر پلتفرم ما ارائه می‌دهد.

پشتیبانی از تعبیه‌سازی API بومی Gemini

ما پشتیبانی جامع از تعبیه‌سازی را به API بومی Gemini v1beta اضافه کرده‌ایم که به توسعه‌دهندگان امکان استفاده از مدل‌های تعبیه‌سازی پیشرفته گوگل را از طریق رویکردهای سازگار با OpenAI و SDK بومی Google GenAI می‌دهد.

نقطه پایانی جدید embedContent

  • gemini-embedding-001: مدل تعبیه‌سازی اصلی گوگل با بهینه‌سازی خاص وظیفه پیشرفته و کنترل انعطاف‌پذیر ابعاد. مستندات

ویژگی‌های کلیدی:

  • نقطه پایانی: /v1beta/models/{model}:embedContent
  • حداکثر توکن‌های ورودی: ۲٬۰۴۸ توکن
  • ابعاد خروجی: انعطاف‌پذیر ۱۲۸-۳۰۷۲ (توصیه‌شده: ۷۶۸، ۱۵۳۶، ۳۰۷۲)
  • قیمت‌گذاری ورودی: ۰.۱۵ دلار / ۱ میلیون توکن
  • قیمت‌گذاری خروجی: ۰.۰۷۵ دلار / ۱ میلیون توکن
  • انواع وظایف: SEMANTIC_SIMILARITY، CLASSIFICATION، CLUSTERING، RETRIEVAL_DOCUMENT، RETRIEVAL_QUERY، CODE_RETRIEVAL_QUERY، QUESTION_ANSWERING، FACT_VERIFICATION
  • ویژگی‌های پیشرفته: یادگیری نمایش ماتریوشکا (MRL) برای ابعاد انعطاف‌پذیر
  • در دسترس در: /v1beta/models، v1/embeddings
python
from google import genai
from google.genai import types

client = genai.Client(
    api_key="your-avalai-api-key",
    http_options={"api_version": "v1beta", "base_url": "https://api.avalai.ir"},
)

# تولید تعبیه‌سازی پایه
result = client.models.embed_content(
    model="gemini-embedding-001", contents="معنای زندگی چیست؟"
)

print(f"ابعاد تعبیه‌سازی: {len(result.embeddings[0].values)}")

# استفاده پیشرفته با نوع وظیفه و ابعاد سفارشی
result = client.models.embed_content(
    model="gemini-embedding-001",
    contents=["معنای زندگی چیست؟", "هدف وجود چیست؟", "چگونه کیک درست کنم؟"],
    config=types.EmbedContentConfig(
        task_type="SEMANTIC_SIMILARITY", output_dimensionality=768
    ),
)

for i, embedding in enumerate(result.embeddings):
    print(f"تعبیه‌سازی {i}: {len(embedding.values)} بعد")
javascript
import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({
    apiKey: process.env.AVALAI_API_KEY,
    httpOptions: {"apiVersion": "v1beta", "baseUrl": "https://api.avalai.ir"}}
});

// تولید تعبیه‌سازی پایه
const response = await ai.models.embedContent({
    model: "gemini-embedding-001",
    contents: "معنای زندگی چیست؟"
});

console.log(`ابعاد تعبیه‌سازی: ${response.embeddings[0].values.length}`);

// استفاده پیشرفته با نوع وظیفه
const advancedResponse = await ai.models.embedContent({
    model: "gemini-embedding-001",
    contents: [
        "معنای زندگی چیست؟",
        "هدف وجود چیست؟"
    ],
    taskType: "SEMANTIC_SIMILARITY",
    outputDimensionality: 768
});

console.log(`${advancedResponse.embeddings.length} تعبیه‌سازی تولید شد`);
bash
# تعبیه‌سازی پایه با API بومی
curl "https://api.avalai.ir/v1beta/models/gemini-embedding-001:embedContent" \
  -H "x-goog-api-key: $AVALAI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "contents": [
      {"parts": [{"text": "معنای زندگی چیست؟"}]}
    ]
  }'

# استفاده پیشرفته با نوع وظیفه و ابعاد سفارشی
curl "https://api.avalai.ir/v1beta/models/gemini-embedding-001:embedContent" \
  -H "x-goog-api-key: $AVALAI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "contents": [
      {"parts": [{"text": "معنای زندگی چیست؟"}]},
      {"parts": [{"text": "هدف وجود چیست؟"}]}
    ],
    "embedding_config": {
      "task_type": "SEMANTIC_SIMILARITY",
      "output_dimensionality": 768
    }
  }'

پشتیبانی بهبود یافته از تعبیه‌سازی سازگار با OpenAI

علاوه بر پشتیبانی از API بومی، ما نقطه پایانی تعبیه‌سازی سازگار با OpenAI خود را با قابلیت‌های کامل تعبیه‌سازی Gemini بهبود داده‌ایم:

python
from openai import OpenAI

client = OpenAI(
    api_key="your-avalai-api-key",
    base_url="https://api.avalai.ir/v1",
)

# تعبیه‌سازی پیشرفته Gemini با نوع وظیفه و ابعاد سفارشی
response = client.embeddings.create(
    model="gemini-embedding-001",
    input=["معنای زندگی چیست؟", "هدف وجود چیست؟", "چگونه کیک درست کنم؟"],
    extra_body={"task_type": "SEMANTIC_SIMILARITY", "output_dimensionality": 768},
)

# محاسبه شباهت کسینوسی
import numpy as np
from sklearn.metrics.pairwise import cosine_similarity

embeddings = [item.embedding for item in response.data]
embeddings_matrix = np.array(embeddings)
similarity_matrix = cosine_similarity(embeddings_matrix)

print(f"شباهت بین دو متن اول: {similarity_matrix[0, 1]:.4f}")
javascript
import { OpenAI } from "openai";

const client = new OpenAI({
    apiKey: process.env.AVALAI_API_KEY,
    baseURL: "https://api.avalai.ir/v1",
});

// تعبیه‌سازی پیشرفته Gemini با نوع وظیفه
const response = await client.embeddings.create({
    model: "gemini-embedding-001",
    input: [
        "معنای زندگی چیست؟",
        "هدف وجود چیست؟",
        "چگونه کیک درست کنم؟"
    ],
    // @ts-expect-error extra_body is a provider-specific parameter
    extra_body: {
        task_type: "SEMANTIC_SIMILARITY",
        output_dimensionality: 768
    }
});

const embeddings = response.data.map(item => item.embedding);
console.log(`${embeddings.length} تعبیه‌سازی با ${embeddings[0].length} بعد تولید شد`);

نتایج تلاش‌های بهبود عملکرد

به عنوان بخشی از تلاش‌های بهبود پیوسته عملکرد، که ماه گذشته آغاز شد، ما بهبودهای قابل توجهی را در پایداری سرویس API و عملکرد ارائه داده‌ایم:

بهبودهای عملکرد:

  • بهبود نرخ موفقیت: بهبود نرخ موفقیت API در تمام نقاط پایانی
  • کاهش تاخیر: کاهش متوسط تاخیر پاسخ برای عملیات تعبیه‌سازی
  • پایداری اتصال: بهبود مدیریت اتصال و مدیریت خطا
  • بهینه‌سازی توان عملیاتی: افزایش ظرفیت مدیریت درخواست‌های همزمان به میزان ۷۰٪
  • بازیابی خطا: بهبود مکانیسم‌های تلاش مجدد خودکار و تنزل تدریجی

سرویس‌های تحت تاثیر:

  • v1/embeddings - بهبود عملکرد تولید تعبیه‌سازی
  • /v1beta/models - بهبود قابلیت اطمینان API بومی Gemini
  • v1/chat/completions - بهینه‌سازی پردازش جریانی و دسته‌ای
  • v1/responses - بهبود پایداری تولید پاسخ

ویژگی‌های تعبیه‌سازی پیشرفته

پیاده‌سازی تعبیه‌سازی Gemini ما شامل ویژگی‌های پیشرفته برای عملکرد بهینه است:

بهینه‌سازی خاص وظیفه:

  • SEMANTIC_SIMILARITY: بهینه‌سازی شده برای سیستم‌های توصیه و تشخیص تکراری
  • CLASSIFICATION: بهبود یافته برای تحلیل احساسات و تشخیص اسپم
  • CLUSTERING: بهبود یافته برای سازماندهی اسناد و تحقیقات بازار
  • RETRIEVAL_DOCUMENT: بهینه‌سازی شده برای سیستم‌های RAG و موتورهای جستجو
  • RETRIEVAL_QUERY: بهبود یافته برای برنامه‌های جستجوی سفارشی
  • CODE_RETRIEVAL_QUERY: تخصصی شده برای جستجوی کد و جستجوی مستندات
  • QUESTION_ANSWERING: بهینه‌سازی شده برای چت‌بات‌ها و سیستم‌های FAQ
  • FACT_VERIFICATION: بهبود یافته برای سیستم‌های تایید خودکار

کنترل انعطاف‌پذیر ابعاد:

  • پشتیبانی از ۱۲۸-۳۰۷۲ بعد با یادگیری نمایش ماتریوشکا (MRL)
  • ابعاد توصیه‌شده: ۷۶۸، ۱۵۳۶، ۳۰۷۲ برای عملکرد بهینه
  • نرمال‌سازی خودکار برای ۳۰۷۲ بعد
  • راهنمایی نرمال‌سازی دستی برای ابعاد کوچک‌تر

لینک‌های مرتبط