{
  "aboutHtml": "<p>Gemini Embedding 2 — Google-дың мәтінді, суреттерді, бейнені, аудионы және PDF-ті сандық түрде көрсетуге арналған мультимодальді эмбеддинг моделі. Ол қолданба әртүрлі медиа түрлерінің мағынасын салыстыра алуы үшін оларды ортақ кеңістікке бейнелейді. Нәтижесі — семантикалық іздеуге, құжат табуға, ұсыныстарға, жіктеуге немесе кластерлеуге пайдалы сандар векторы; ол жазбаша жауап немесе генерацияланған медиафайл емес. Google 100-ден астам тілдегі семантикалық қамтуды құжаттайды.</p><p>Білім базасы үшін бастапқы үзінділердің векторларын жасап, пайдаланушы сұрауын олармен салыстырып, тиісті материалды табыңыз. Одан кейін бөлек мәтін моделі сол дереккөздерге сүйеніп жауап құрастыра алады. Медиа жинағында мәтіндік сипаттама байланысты суреттерді немесе бейнені іздей алады; сурет те сұрау бола алады. Табылған нәтижені тексеріп, бастапқы контексінде көрсету мүмкін болуы үшін әр вектордың бастапқы мазмұнмен, соның ішінде бетке немесе клипке сілтемемен байланысын сақтаңыз.</p><p>Жалпы кіріс шегі — 8192 токен. Тұрақты модель нұсқаулығы ең көбі алты PNG немесе JPEG суретін, 180 секундқа дейін MP3 немесе WAV аудиосын және 120 секундқа дейін MP4 немесе MOV бейнесін қабылдайды. Құжатталған бейне кодектері — H264, H265, AV1 және VP9. Бейне өңдеу ең көбі 32 кадр қолданады: 32 секундқа дейінгі клиптерден секундына бір кадр алынады, ал ұзын клиптерден біркелкі аралықпен 32 кадр іріктеледі. Бейненің дыбыс жолы осы бейне кірісінде өңделмейді; іздеуге маңызды болса, дыбысының эмбеддингін бөлек жасаңыз.</p><p>PDF кірісі ең көбі алты беті бар бір файлды қабылдайды. Ең жақсы сапа үшін Google әр PDF-те бір бет болуын ұсынады. Үлкен дереккөзді мағыналы беттерге немесе бөлімдерге бөліп, бастапқы құжатпен байланысын сақтаңыз. Қатысы жоқ материалды тек шекке сыйғаны үшін біріктірмей, іздеуден табылуы тиіс мазмұнды көрсететін үзіндіні таңдаңыз. Аралас медиа сұрауына да ортақ токен шегі қолданылады. Әр PDF беті шығарылған мәтін токендеріне қосымша 258 көрнекі токен жұмсайды. Google құжаттаған үдерісте ортақ 8192 токендік шектен асқан мазмұн қатесіз қысқартылады.</p><p>Шығыс өлшемі 128-ден 3072-ге дейін икемді; әдепкісі — 3072, ұсынылатын өлшемдер — 768, 1536 және 3072. Модель Matryoshka Representation Learning әдісін қолданады, сондықтан вектордың бастапқы бөліктері кіші өлшемдерде де пайдалы болып қалады. Нұсқаулық әдепкі және қысқартылған векторлар үшін автоматты нормалауды құжаттайды. Қолданба салыстыратын жазбалар мен сұрауларға бірізді өлшем таңдаңыз; сұралған өлшем бастапқы мазмұнның өзін емес, сандық көрсетілімді өзгертеді.</p><p>Тек мәтіндік тапсырмаларда ескі task_type өрісін қолданудың орнына мақсатты мәтіннің ішіне қосыңыз. Google асимметриялық іздеуді симметриялық салыстырудан ажыратады. Іздеу сұрауы «task: search result | query: {content}», ал бастапқы құжат «title: {title} | text: {content}» пішімін қолданады; тақырыбы болмаса, «title: none» қолданыңыз. Сұраққа жауап беру, факт тексеру және код іздеу тапсырмаларының өз сұрау префикстері бар. Жіктеу, кластерлеу немесе сөйлем ұқсастығы үшін екі жақта да бір тапсырма пішімін дәйекті қолданыңыз. Нұсқаулық жалпы алғанда біріктірілген мультимодальді көрсетілімнің мәтін бөлігіне тапсырма префиксін қоспауға кеңес береді.</p><p>Кіріс құрылымы нәтиженің бір біріктірілген нысанды немесе бөлек элементтерді көрсететінін анықтайды. Бірге берілген бірнеше бөлік жинақталған эмбеддинг жасайды; бөлек Content нысандары әр жазбаға бөлек эмбеддинг жасайды. Мәтін мен суреті бар жарияланым үшін біріктірілген көрсетілім олардың байланысын қамти алады. Тәуелсіз ізделетін жазбаларды бөлек ұстаңыз. Бұл таңдау іздеудің түйіршіктілігіне әсер етеді: тұтас жарияланымға бір вектор беру әр үзіндіге немесе суретке бір вектор беруден өзгеше.</p><p>Нұсқаулық Gemini Embedding 001 және Gemini Embedding 2 векторлары үйлеспейтін кеңістіктерде орналасатынын және оларды тікелей салыстыруға болмайтынын айтады. Ескі модельден көшірілетін жинақ үшін жаңа кеңістікке эмбеддингтерді қайта жасау керек. Модель таңдауы мен өлшемдерді салыстырылатын векторлармен бірізді ұстаңыз және бастапқы мәтін мен медианы сандық индекстен бөлек сақтаңыз. Эмбеддинг ұқсастығы — құжаттың пайдаланушы сұрағына неге жауап беретінін фактімен түсіндіру емес, іздеу сигналы.</p><p>Практикалық каталогта өнім фотосуреті мен бекітілген сипаттамасы бір нысан ретінде табылуы тиіс болса, олардың эмбеддингін бірге жасаңыз. Құжат жинағында нақты тақырыпқа бағытталған үзінділердің эмбеддингін жасап, мақсатқа сай пішімделген сұраумен салыстырыңыз, содан кейін іздеу нәтижесімен бірге бастапқы үзінділерді көрсетіңіз. Аудио немесе бейнеде ізделетін оқиғаны сипаттайтын эпизодты таңдап, бастапқы уақыт аралығын сақтаңыз. Пайдалы нәтиже — қолданбаның келесі іздеу немесе талдау қадамына арналған, бастапқы дәлелдермен байланысқан сандық көрсетілім.</p>",
  "aboutText": "Gemini Embedding 2 — Google-дың мәтінді, суреттерді, бейнені, аудионы және PDF-ті сандық түрде көрсетуге арналған мультимодальді эмбеддинг моделі. Ол қолданба әртүрлі медиа түрлерінің мағынасын салыстыра алуы үшін оларды ортақ кеңістікке бейнелейді. Нәтижесі — семантикалық іздеуге, құжат табуға, ұсыныстарға, жіктеуге немесе кластерлеуге пайдалы сандар векторы; ол жазбаша жауап немесе генерацияланған медиафайл емес. Google 100-ден астам тілдегі семантикалық қамтуды құжаттайды.\n\nБілім базасы үшін бастапқы үзінділердің векторларын жасап, пайдаланушы сұрауын олармен салыстырып, тиісті материалды табыңыз. Одан кейін бөлек мәтін моделі сол дереккөздерге сүйеніп жауап құрастыра алады. Медиа жинағында мәтіндік сипаттама байланысты суреттерді немесе бейнені іздей алады; сурет те сұрау бола алады. Табылған нәтижені тексеріп, бастапқы контексінде көрсету мүмкін болуы үшін әр вектордың бастапқы мазмұнмен, соның ішінде бетке немесе клипке сілтемемен байланысын сақтаңыз.\n\nЖалпы кіріс шегі — 8192 токен. Тұрақты модель нұсқаулығы ең көбі алты PNG немесе JPEG суретін, 180 секундқа дейін MP3 немесе WAV аудиосын және 120 секундқа дейін MP4 немесе MOV бейнесін қабылдайды. Құжатталған бейне кодектері — H264, H265, AV1 және VP9. Бейне өңдеу ең көбі 32 кадр қолданады: 32 секундқа дейінгі клиптерден секундына бір кадр алынады, ал ұзын клиптерден біркелкі аралықпен 32 кадр іріктеледі. Бейненің дыбыс жолы осы бейне кірісінде өңделмейді; іздеуге маңызды болса, дыбысының эмбеддингін бөлек жасаңыз.\n\nPDF кірісі ең көбі алты беті бар бір файлды қабылдайды. Ең жақсы сапа үшін Google әр PDF-те бір бет болуын ұсынады. Үлкен дереккөзді мағыналы беттерге немесе бөлімдерге бөліп, бастапқы құжатпен байланысын сақтаңыз. Қатысы жоқ материалды тек шекке сыйғаны үшін біріктірмей, іздеуден табылуы тиіс мазмұнды көрсететін үзіндіні таңдаңыз. Аралас медиа сұрауына да ортақ токен шегі қолданылады. Әр PDF беті шығарылған мәтін токендеріне қосымша 258 көрнекі токен жұмсайды. Google құжаттаған үдерісте ортақ 8192 токендік шектен асқан мазмұн қатесіз қысқартылады.\n\nШығыс өлшемі 128-ден 3072-ге дейін икемді; әдепкісі — 3072, ұсынылатын өлшемдер — 768, 1536 және 3072. Модель Matryoshka Representation Learning әдісін қолданады, сондықтан вектордың бастапқы бөліктері кіші өлшемдерде де пайдалы болып қалады. Нұсқаулық әдепкі және қысқартылған векторлар үшін автоматты нормалауды құжаттайды. Қолданба салыстыратын жазбалар мен сұрауларға бірізді өлшем таңдаңыз; сұралған өлшем бастапқы мазмұнның өзін емес, сандық көрсетілімді өзгертеді.\n\nТек мәтіндік тапсырмаларда ескі task_type өрісін қолданудың орнына мақсатты мәтіннің ішіне қосыңыз. Google асимметриялық іздеуді симметриялық салыстырудан ажыратады. Іздеу сұрауы «task: search result | query: {content}», ал бастапқы құжат «title: {title} | text: {content}» пішімін қолданады; тақырыбы болмаса, «title: none» қолданыңыз. Сұраққа жауап беру, факт тексеру және код іздеу тапсырмаларының өз сұрау префикстері бар. Жіктеу, кластерлеу немесе сөйлем ұқсастығы үшін екі жақта да бір тапсырма пішімін дәйекті қолданыңыз. Нұсқаулық жалпы алғанда біріктірілген мультимодальді көрсетілімнің мәтін бөлігіне тапсырма префиксін қоспауға кеңес береді.\n\nКіріс құрылымы нәтиженің бір біріктірілген нысанды немесе бөлек элементтерді көрсететінін анықтайды. Бірге берілген бірнеше бөлік жинақталған эмбеддинг жасайды; бөлек Content нысандары әр жазбаға бөлек эмбеддинг жасайды. Мәтін мен суреті бар жарияланым үшін біріктірілген көрсетілім олардың байланысын қамти алады. Тәуелсіз ізделетін жазбаларды бөлек ұстаңыз. Бұл таңдау іздеудің түйіршіктілігіне әсер етеді: тұтас жарияланымға бір вектор беру әр үзіндіге немесе суретке бір вектор беруден өзгеше.\n\nНұсқаулық Gemini Embedding 001 және Gemini Embedding 2 векторлары үйлеспейтін кеңістіктерде орналасатынын және оларды тікелей салыстыруға болмайтынын айтады. Ескі модельден көшірілетін жинақ үшін жаңа кеңістікке эмбеддингтерді қайта жасау керек. Модель таңдауы мен өлшемдерді салыстырылатын векторлармен бірізді ұстаңыз және бастапқы мәтін мен медианы сандық индекстен бөлек сақтаңыз. Эмбеддинг ұқсастығы — құжаттың пайдаланушы сұрағына неге жауап беретінін фактімен түсіндіру емес, іздеу сигналы.\n\nПрактикалық каталогта өнім фотосуреті мен бекітілген сипаттамасы бір нысан ретінде табылуы тиіс болса, олардың эмбеддингін бірге жасаңыз. Құжат жинағында нақты тақырыпқа бағытталған үзінділердің эмбеддингін жасап, мақсатқа сай пішімделген сұраумен салыстырыңыз, содан кейін іздеу нәтижесімен бірге бастапқы үзінділерді көрсетіңіз. Аудио немесе бейнеде ізделетін оқиғаны сипаттайтын эпизодты таңдап, бастапқы уақыт аралығын сақтаңыз. Пайдалы нәтиже — қолданбаның келесі іздеу немесе талдау қадамына арналған, бастапқы дәлелдермен байланысқан сандық көрсетілім.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "49cd4aefffa4b5cd089af787a81885b5e83c56004b76331727d129fe73ae1281",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "kk",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">G</span><h2 id=\"sheet-title\">Google: Gemini Embedding 2</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Жабу\">×</button></div><div class=\"idline\"><span>Google /</span><code>google/gemini-embedding-2</code><button type=\"button\" id=\"copy-id\">ID көшіру</button></div><nav class=\"card-jump-nav\" aria-label=\"Модель карточкасының бөлімдері\"><button type=\"button\" data-card-jump=\"overview\">Бастау</button><button type=\"button\" data-card-jump=\"methods\">Кіріс деректері мен әдістер</button><button type=\"button\" data-card-jump=\"pricing\">Тарифтер</button><button type=\"button\" data-card-jump=\"examples\">Мысалдар</button><button type=\"button\" data-card-jump=\"results\">Нәтижелер</button><button type=\"button\" data-card-jump=\"aliases\">Балама атаулар</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API әдістері\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|embeddings|/v1/embeddings|google%2Fgemini-embedding-2\">Эмбеддингтер</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Бастау</h3><p class=\"mdesc-full\">Gemini Embedding 2 мәтінді, суреттерді, аудионы, бейнені және PDF-ті ортақ сандық кеңістікке бейнелейді. Оның векторлары модальділіктер арасындағы іздеуді, материал табуды, жіктеуді және кластерлеуді қолдайды; өлшемдері икемді, кіріс шегі — 8192 токен.</p><dl class=\"card-io\" data-card-io><div><dt>Қабылданатын кіріс деректері</dt><dd>Мәтін · token_ids</dd></div><div><dt>Нәтижелер</dt><dd>embedding</dd></div></dl><details class=\"card-about\"><summary>Модель туралы</summary><p class=\"note-s\" data-model-method-boundary>Бұл сипаттама модель мүмкіндіктерін қамтиды. Ailoot жүйесінде таңдалған әдіс үшін қолжетімді кіріс, шығыс және параметрлер төменде берілген.</p><div class=\"mabout\" id=\"m-about\"><p>Gemini Embedding 2 — Google-дың мәтінді, суреттерді, бейнені, аудионы және PDF-ті сандық түрде көрсетуге арналған мультимодальді эмбеддинг моделі. Ол қолданба әртүрлі медиа түрлерінің мағынасын салыстыра алуы үшін оларды ортақ кеңістікке бейнелейді. Нәтижесі — семантикалық іздеуге, құжат табуға, ұсыныстарға, жіктеуге немесе кластерлеуге пайдалы сандар векторы; ол жазбаша жауап немесе генерацияланған медиафайл емес. Google 100-ден астам тілдегі семантикалық қамтуды құжаттайды.</p><p>Білім базасы үшін бастапқы үзінділердің векторларын жасап, пайдаланушы сұрауын олармен салыстырып, тиісті материалды табыңыз. Одан кейін бөлек мәтін моделі сол дереккөздерге сүйеніп жауап құрастыра алады. Медиа жинағында мәтіндік сипаттама байланысты суреттерді немесе бейнені іздей алады; сурет те сұрау бола алады. Табылған нәтижені тексеріп, бастапқы контексінде көрсету мүмкін болуы үшін әр вектордың бастапқы мазмұнмен, соның ішінде бетке немесе клипке сілтемемен байланысын сақтаңыз.</p><p>Жалпы кіріс шегі — 8192 токен. Тұрақты модель нұсқаулығы ең көбі алты PNG немесе JPEG суретін, 180 секундқа дейін MP3 немесе WAV аудиосын және 120 секундқа дейін MP4 немесе MOV бейнесін қабылдайды. Құжатталған бейне кодектері — H264, H265, AV1 және VP9. Бейне өңдеу ең көбі 32 кадр қолданады: 32 секундқа дейінгі клиптерден секундына бір кадр алынады, ал ұзын клиптерден біркелкі аралықпен 32 кадр іріктеледі. Бейненің дыбыс жолы осы бейне кірісінде өңделмейді; іздеуге маңызды болса, дыбысының эмбеддингін бөлек жасаңыз.</p><p>PDF кірісі ең көбі алты беті бар бір файлды қабылдайды. Ең жақсы сапа үшін Google әр PDF-те бір бет болуын ұсынады. Үлкен дереккөзді мағыналы беттерге немесе бөлімдерге бөліп, бастапқы құжатпен байланысын сақтаңыз. Қатысы жоқ материалды тек шекке сыйғаны үшін біріктірмей, іздеуден табылуы тиіс мазмұнды көрсететін үзіндіні таңдаңыз. Аралас медиа сұрауына да ортақ токен шегі қолданылады. Әр PDF беті шығарылған мәтін токендеріне қосымша 258 көрнекі токен жұмсайды. Google құжаттаған үдерісте ортақ 8192 токендік шектен асқан мазмұн қатесіз қысқартылады.</p><p>Шығыс өлшемі 128-ден 3072-ге дейін икемді; әдепкісі — 3072, ұсынылатын өлшемдер — 768, 1536 және 3072. Модель Matryoshka Representation Learning әдісін қолданады, сондықтан вектордың бастапқы бөліктері кіші өлшемдерде де пайдалы болып қалады. Нұсқаулық әдепкі және қысқартылған векторлар үшін автоматты нормалауды құжаттайды. Қолданба салыстыратын жазбалар мен сұрауларға бірізді өлшем таңдаңыз; сұралған өлшем бастапқы мазмұнның өзін емес, сандық көрсетілімді өзгертеді.</p><p>Тек мәтіндік тапсырмаларда ескі task_type өрісін қолданудың орнына мақсатты мәтіннің ішіне қосыңыз. Google асимметриялық іздеуді симметриялық салыстырудан ажыратады. Іздеу сұрауы «task: search result | query: {content}», ал бастапқы құжат «title: {title} | text: {content}» пішімін қолданады; тақырыбы болмаса, «title: none» қолданыңыз. Сұраққа жауап беру, факт тексеру және код іздеу тапсырмаларының өз сұрау префикстері бар. Жіктеу, кластерлеу немесе сөйлем ұқсастығы үшін екі жақта да бір тапсырма пішімін дәйекті қолданыңыз. Нұсқаулық жалпы алғанда біріктірілген мультимодальді көрсетілімнің мәтін бөлігіне тапсырма префиксін қоспауға кеңес береді.</p><p>Кіріс құрылымы нәтиженің бір біріктірілген нысанды немесе бөлек элементтерді көрсететінін анықтайды. Бірге берілген бірнеше бөлік жинақталған эмбеддинг жасайды; бөлек Content нысандары әр жазбаға бөлек эмбеддинг жасайды. Мәтін мен суреті бар жарияланым үшін біріктірілген көрсетілім олардың байланысын қамти алады. Тәуелсіз ізделетін жазбаларды бөлек ұстаңыз. Бұл таңдау іздеудің түйіршіктілігіне әсер етеді: тұтас жарияланымға бір вектор беру әр үзіндіге немесе суретке бір вектор беруден өзгеше.</p><p>Нұсқаулық Gemini Embedding 001 және Gemini Embedding 2 векторлары үйлеспейтін кеңістіктерде орналасатынын және оларды тікелей салыстыруға болмайтынын айтады. Ескі модельден көшірілетін жинақ үшін жаңа кеңістікке эмбеддингтерді қайта жасау керек. Модель таңдауы мен өлшемдерді салыстырылатын векторлармен бірізді ұстаңыз және бастапқы мәтін мен медианы сандық индекстен бөлек сақтаңыз. Эмбеддинг ұқсастығы — құжаттың пайдаланушы сұрағына неге жауап беретінін фактімен түсіндіру емес, іздеу сигналы.</p><p>Практикалық каталогта өнім фотосуреті мен бекітілген сипаттамасы бір нысан ретінде табылуы тиіс болса, олардың эмбеддингін бірге жасаңыз. Құжат жинағында нақты тақырыпқа бағытталған үзінділердің эмбеддингін жасап, мақсатқа сай пішімделген сұраумен салыстырыңыз, содан кейін іздеу нәтижесімен бірге бастапқы үзінділерді көрсетіңіз. Аудио немесе бейнеде ізделетін оқиғаны сипаттайтын эпизодты таңдап, бастапқы уақыт аралығын сақтаңыз. Пайдалы нәтиже — қолданбаның келесі іздеу немесе талдау қадамына арналған, бастапқы дәлелдермен байланысқан сандық көрсетілім.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Ailoot жүйесінде қолжетімді · кіріс деректері мен әдістер</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Эмбеддингтер</b> <code>POST /v1/embeddings</code></summary><dl class=\"method-capabilities\"><div><dt>Кіріс</dt><dd><code>text</code>, <code>token_ids</code></dd></div><div><dt>Шығыс</dt><dd><code>embedding</code></dd></div><div><dt>Контекст</dt><dd>8 192 tokens</dd></div><div><dt>Шығыс пішімі</dt><dd>json</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Өріс</th><th>Түрі</th><th>Талап</th><th>Мәндер мен шектеулер</th><th>Әдепкі</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>string</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>google/gemini-embedding-2</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>string|string[]|integer[]|integer[][]</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>Элементтердің ең аз саны: 1</div><div>Шарттар: Бос емес, біртекті пакет. Токендердің ID мәндері — теріс емес бүтін сандар.</div><div>Кіріс бюджеті: Ең көбі: 8 192 · Мәтін бірлігі: UTF8 байттары · Токен бірлігі: токендер массивінің элементтері</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">encoding_format</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>string</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті емес</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>float</div></td><td data-cell-label=\"Әдепкі\" data-default=\"known\"><span class=\"card-cell-label\">Әдепкі</span>float</td></tr><tr data-parameter-availability=\"unsupported\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">dimensions</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>integer</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Қолдау көрсетілмейді</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>Ең азы: 1</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">user</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>json_value</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті емес</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>Шарттар: Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">session_id</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>json_value</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті емес</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>Шарттар: Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">trace</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>json_value</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті емес</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>Шарттар: Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>object</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті емес</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>Шарттар: provider.options қабылданбайды</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Кіріс материалдарының үйлесімдері</summary><p class=\"note-s\"><b>text_to_embedding</b></p></details><details class=\"note-s\" data-method-contract><summary>Әдіс параметрлері мен өмірлік циклі</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Параметр</th><th>Параметр талаптары</th></tr></thead><tbody><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>content_type</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>application/json</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>required</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>model, input</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>input_shapes</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>string, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>encoding_format</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>float</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>dimensions_override</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>false</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>max_input_budget_units</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>8192</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>multimodal_objects</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>false</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>material_types</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>text, token_ids</td></tr></tbody></table></div><p>Өмірлік цикл: <code>synchronous_json</code></p><p class=\"note-s\">Әрбір вектордың индексін және өлшемін сақтаңыз.</p><p class=\"note-s\">Модель атауының мультимодаль болуы осы нақты жолда кескін объектілерін қабылдауға рұқсат бермейді.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Тарифтер</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Тариф анықтамасы сұрау мүмкіндіктерін қоспайды. Қолдау көрсетілетін параметрлер таңдалған әдісте берілген.</p><dl data-price-conditions><dt>Жылдам режим</dt><dd>Стандартты тариф <span class=\"note-s\">Жылдам режим таңдалғанда</span></dd><dt>Икемді режим</dt><dd>Стандартты тариф <span class=\"note-s\">flex режимі таңдалғанда</span></dd><dt>Ой қорытудың ең жоғары деңгейі</dt><dd>Стандартты тариф <span class=\"note-s\">Ой қорыту деңгейі ең жоғары болып, default түзетуі қолданылғанда</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot мөлшерлемелері</h4><h4>Баптаулар бойынша бағалар</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Баптау</th><th>Мөлшерлемелер кестесі</th><th>Төлем</th></tr></thead><tbody><tr><th data-cell-label=\"Баптау\" scope=\"row\"><span class=\"card-cell-label\">Баптау</span>Токендердің базалық тарифтері</th><td data-cell-label=\"Мөлшерлемелер кестесі\"><span class=\"card-cell-label\">Мөлшерлемелер кестесі</span>Негізгі мөлшерлеме</td><td data-cell-label=\"Төлем\"><span class=\"card-cell-label\">Төлем</span><div><span>Кіріс · Кіріс токендері</span> <b>$0.0004</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Шығыс · Шығыс токендері</span> <b>$0</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Кіріс · Кэшті оқу</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Кіріс · Кэшке жазу</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Кіріс · Кэшке жазу, 1 сағ</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot сұрау алдында болжамды соманы резервтейді. Нәтижеден кейін өлшенген пайдалану көлемі бойынша қорытынды төлемді шегереді. Ағындық жауап үшін төлем соңғы пайдалану жазбасы негізінде шегеріледі. <a href=\"/docs/kk/billing/reserve/\">Резервтеу мен төлемді есептеу тәртібі →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Сұрау мысалдары</h3><h4>Ailoot Ultra · Эмбеддингтер</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Код нұсқалары\"><button class=\"cg-tab\" id=\"model-code-1487-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1487-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button><button class=\"cg-tab\" id=\"model-code-1487-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1487-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Python SDK</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Кодты көшіру\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1487-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1487-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;google/gemini-embedding-2&quot;, &quot;input&quot;: [&quot;First document&quot;, &quot;Second document&quot;]}&#39;)\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nr=json.loads(Path(&quot;result.json&quot;).read_text())\nfor x in r.get(&quot;data&quot;,[]): print(json.dumps({&quot;index&quot;:x.get(&quot;index&quot;),&quot;embedding&quot;:x.get(&quot;embedding&quot;)}))\nPY_RESULT\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-1487-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-1487-tab-1\" hidden><pre data-lang=\"python\"><code>from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=&quot;https://api.ailoot.ai/v1&quot;,api_key=os.environ[&quot;AILOOT_API_KEY&quot;],max_retries=0)\nresult=client.embeddings.create(model=&#39;google/gemini-embedding-2&#39;,input=[&quot;First document&quot;,&quot;Second document&quot;])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Нәтижелерді алу және сақтау</h3><h4>Ailoot Ultra · Эмбеддингтер</h4><p class=\"note-s\">json</p><div class=\"card-result-process\" data-all-results><h5>Барлық дайын нәтижені сақтау</h5><p class=\"note-s\">Қайтарылған әр толық жауапты, файлды және мазмұн бөлігін сақтаңыз.</p><p class=\"note-s\">Әрбір векторды индексімен бірге сақтаңыз. Векторлар саны кіріс элементтерінің санына тең болуы керек; өлшемдері бірдей болуы керек.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Бастапқы жауапты тексеру қажет болса</h5><p class=\"note-s\">Эмбеддинг тапсырмасы үшін жаңа эндпоинт енгізілмейді.</p></div><details class=\"card-about\" data-output-fields><summary>Жауап өрістері</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Өріс</th><th>Түрі</th></tr></thead><tbody><tr><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">object</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span>string</td></tr><tr><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span>string</td></tr><tr><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">data[].index</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span>integer</td></tr><tr><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">data[].embedding</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span>finite float[]</td></tr><tr><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span>object</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Қателер және келесі қадамдар</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Жауап</th><th>Шарт</th><th>Келесі қадам</th></tr></thead><tbody><tr><th data-cell-label=\"Жауап\" scope=\"row\"><span class=\"card-cell-label\">Жауап</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Шарт\"><span class=\"card-cell-label\">Шарт</span>Міндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қате</td><td data-cell-label=\"Келесі қадам\"><span class=\"card-cell-label\">Келесі қадам</span>Жаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Балама атаулар</h3><h4>Модельдердің балама атаулары</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=google%2Fgemini-embedding-2&amp;route=Ultra&amp;caller=google%2Fgemini-embedding-2&amp;fmt=embeddings\"><code>google/gemini-embedding-2</code></a></span></p><h4>Әдіс жолдарының балама атаулары</h4><p class=\"note-s\">Жоғарыда көрсетілген әдіс жолдарын пайдаланыңыз.</p><h4>Шақыруға арналған байланысты ID</h4><p class=\"note-s\"><a href=\"#m=google%2Fgemini-embedding-2&amp;route=Ultra&amp;caller=google%2Fgemini-embedding-2&amp;fmt=embeddings\"><code>google/gemini-embedding-2</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "google/gemini-embedding-2",
        "fmt": "embeddings",
        "http": "POST",
        "path": "/v1/embeddings",
        "request_model_id": "google/gemini-embedding-2",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|embeddings|/v1/embeddings|google%2Fgemini-embedding-2",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep every vector with its index. Vector count must equal input count; dimensions must be consistent.",
            "errors": [
              {
                "code": null,
                "condition": "Міндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қате",
                "http_status": 400,
                "recovery": "Жаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "job_read": null,
              "mode": "synchronous_json",
              "unknown": "Эмбеддинг тапсырмасы үшін жаңа эндпоинт енгізілмейді."
            },
            "material_combinations": [
              {
                "alternatives": [
                  "string",
                  "string[]",
                  "nonnegative_integer_token_array",
                  "nonnegative_integer_token_array[]"
                ],
                "mode": "text_to_embedding"
              }
            ],
            "operation_modes": [
              "single_embedding",
              "batched_embeddings"
            ],
            "outputs": {
              "all_results": "Әрбір векторды индексімен бірге сақтаңыз. Векторлар саны кіріс элементтерінің санына тең болуы керек; өлшемдері бірдей болуы керек.",
              "default_dimensions": null,
              "family": "embedding",
              "fields": [
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "data[].embedding",
                  "type": "finite float[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "google/gemini-embedding-2"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "budget": {
                  "maximum": 8192,
                  "text_unit": "UTF8 байттары",
                  "token_unit": "токендер массивінің элементтері"
                },
                "conditions": "Бос емес, біртекті пакет. Токендердің ID мәндері — теріс емес бүтін сандар.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "min_items": 1,
                "name": "input",
                "required": true,
                "type": "string|string[]|integer[]|integer[][]"
              },
              {
                "availability": "source_interface",
                "default": "float",
                "default_known": true,
                "enum": [
                  "float"
                ],
                "enum_known": true,
                "name": "encoding_format",
                "required": false,
                "type": "string"
              },
              {
                "availability": "unsupported",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "dimensions",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "session_id",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "source_interface",
                "conditions": "provider.options қабылданбайды",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "mixed input kinds",
              "empty input",
              "image/audio/file objects",
              "encoding_format=base64",
              "dimensions override"
            ]
          },
          "hints": [
            "Әрбір вектордың индексін және өлшемін сақтаңыз.",
            "Модель атауының мультимодаль болуы осы нақты жолда кескін объектілерін қабылдауға рұқсат бермейді."
          ],
          "input": {
            "content_type": "application/json",
            "dimensions_override": false,
            "encoding_format": [
              "float"
            ],
            "input_shapes": [
              "string",
              "string[]",
              "nonnegative_integer_token_array",
              "nonnegative_integer_token_array[]"
            ],
            "material_types": [
              "text",
              "token_ids"
            ],
            "max_input_budget_units": 8192,
            "multimodal_objects": false,
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "mode": "synchronous_json",
            "unknown": "no embedding job endpoint inferred"
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_embedding"
          ],
          "output": {
            "default_dimensions": null,
            "family": "embedding",
            "format": "json",
            "http_success": 200,
            "vectors": "one dense float vector per input; indices/model/usage validated"
          }
        },
        "ctx": 8192,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Токендердің базалық тарифтері",
            "units": [
              {
                "amount": "0.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"google/gemini-embedding-2\", \"input\": [\"First document\", \"Second document\"]}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path(\"result.json\").read_text())\nfor x in r.get(\"data\",[]): print(json.dumps({\"index\":x.get(\"index\"),\"embedding\":x.get(\"embedding\")}))\nPY_RESULT\n",
            "label": "curl · retained exact creation",
            "language": "bash"
          },
          {
            "code": "from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=\"https://api.ailoot.ai/v1\",api_key=os.environ[\"AILOOT_API_KEY\"],max_retries=0)\nresult=client.embeddings.create(model='google/gemini-embedding-2',input=[\"First document\",\"Second document\"])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n",
            "label": "Python SDK · all vectors",
            "language": "python"
          }
        ],
        "family": "openai",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "embeddings",
        "hints": [
          "Keep every vector index and dimension.",
          "Multimodal model name does not admit image objects on this exact path."
        ],
        "http": "POST",
        "in": 0.4,
        "input": [
          "text",
          "token_ids"
        ],
        "label": "Эмбеддинги",
        "max_out": null,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Жылдам режим",
            "value": "Стандартты тариф",
            "when": "Жылдам режим таңдалғанда"
          },
          {
            "label": "Икемді режим",
            "value": "Стандартты тариф",
            "when": "flex режимі таңдалғанда"
          },
          {
            "label": "Ой қорытудың ең жоғары деңгейі",
            "value": "Стандартты тариф",
            "when": "Ой қорыту деңгейі ең жоғары болып, default түзетуі қолданылғанда"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "google/gemini-embedding-2",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.0004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000004",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    }
  ],
  "model_id": "google/gemini-embedding-2",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "529d84546705802cd09afe996c60c2a651cf7d9d88bee80f7749339a6bf751bb",
    "input_html_sha256": "dbbaf7ccee71564370ce739ec6c8539dca1a55a13aa65f98d48e138d2796f337",
    "private_audit_sha256": "f5c3112000d2ef3efcab19af9faabbf06b2306a9660993736c6f575cbbc86d3b",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/kk/google-gemini-embedding-2/",
    "description": "Gemini Embedding 2 мәтінді, суреттерді, аудионы, бейнені және PDF-ті ортақ сандық кеңістікке бейнелейді. Оның векторлары модальділіктер арасындағы іздеуді, материал табуды, жіктеуді және кластерлеуді қолдайды; өлшемдері икемді, кіріс шегі — 8192 токен.",
    "locale": "kk",
    "md_url": "https://ailoot.ai/models/kk/google-gemini-embedding-2/index.md",
    "title": "Google: Gemini Embedding 2 — Ailoot",
    "url": "https://ailoot.ai/models/kk/google-gemini-embedding-2/"
  },
  "rawModel": {
    "about": "Gemini Embedding 2 — Google-дың мәтінді, суреттерді, бейнені, аудионы және PDF-ті сандық түрде көрсетуге арналған мультимодальді эмбеддинг моделі. Ол қолданба әртүрлі медиа түрлерінің мағынасын салыстыра алуы үшін оларды ортақ кеңістікке бейнелейді. Нәтижесі — семантикалық іздеуге, құжат табуға, ұсыныстарға, жіктеуге немесе кластерлеуге пайдалы сандар векторы; ол жазбаша жауап немесе генерацияланған медиафайл емес. Google 100-ден астам тілдегі семантикалық қамтуды құжаттайды.\n\nБілім базасы үшін бастапқы үзінділердің векторларын жасап, пайдаланушы сұрауын олармен салыстырып, тиісті материалды табыңыз. Одан кейін бөлек мәтін моделі сол дереккөздерге сүйеніп жауап құрастыра алады. Медиа жинағында мәтіндік сипаттама байланысты суреттерді немесе бейнені іздей алады; сурет те сұрау бола алады. Табылған нәтижені тексеріп, бастапқы контексінде көрсету мүмкін болуы үшін әр вектордың бастапқы мазмұнмен, соның ішінде бетке немесе клипке сілтемемен байланысын сақтаңыз.\n\nЖалпы кіріс шегі — 8192 токен. Тұрақты модель нұсқаулығы ең көбі алты PNG немесе JPEG суретін, 180 секундқа дейін MP3 немесе WAV аудиосын және 120 секундқа дейін MP4 немесе MOV бейнесін қабылдайды. Құжатталған бейне кодектері — H264, H265, AV1 және VP9. Бейне өңдеу ең көбі 32 кадр қолданады: 32 секундқа дейінгі клиптерден секундына бір кадр алынады, ал ұзын клиптерден біркелкі аралықпен 32 кадр іріктеледі. Бейненің дыбыс жолы осы бейне кірісінде өңделмейді; іздеуге маңызды болса, дыбысының эмбеддингін бөлек жасаңыз.\n\nPDF кірісі ең көбі алты беті бар бір файлды қабылдайды. Ең жақсы сапа үшін Google әр PDF-те бір бет болуын ұсынады. Үлкен дереккөзді мағыналы беттерге немесе бөлімдерге бөліп, бастапқы құжатпен байланысын сақтаңыз. Қатысы жоқ материалды тек шекке сыйғаны үшін біріктірмей, іздеуден табылуы тиіс мазмұнды көрсететін үзіндіні таңдаңыз. Аралас медиа сұрауына да ортақ токен шегі қолданылады. Әр PDF беті шығарылған мәтін токендеріне қосымша 258 көрнекі токен жұмсайды. Google құжаттаған үдерісте ортақ 8192 токендік шектен асқан мазмұн қатесіз қысқартылады.\n\nШығыс өлшемі 128-ден 3072-ге дейін икемді; әдепкісі — 3072, ұсынылатын өлшемдер — 768, 1536 және 3072. Модель Matryoshka Representation Learning әдісін қолданады, сондықтан вектордың бастапқы бөліктері кіші өлшемдерде де пайдалы болып қалады. Нұсқаулық әдепкі және қысқартылған векторлар үшін автоматты нормалауды құжаттайды. Қолданба салыстыратын жазбалар мен сұрауларға бірізді өлшем таңдаңыз; сұралған өлшем бастапқы мазмұнның өзін емес, сандық көрсетілімді өзгертеді.\n\nТек мәтіндік тапсырмаларда ескі task_type өрісін қолданудың орнына мақсатты мәтіннің ішіне қосыңыз. Google асимметриялық іздеуді симметриялық салыстырудан ажыратады. Іздеу сұрауы «task: search result | query: {content}», ал бастапқы құжат «title: {title} | text: {content}» пішімін қолданады; тақырыбы болмаса, «title: none» қолданыңыз. Сұраққа жауап беру, факт тексеру және код іздеу тапсырмаларының өз сұрау префикстері бар. Жіктеу, кластерлеу немесе сөйлем ұқсастығы үшін екі жақта да бір тапсырма пішімін дәйекті қолданыңыз. Нұсқаулық жалпы алғанда біріктірілген мультимодальді көрсетілімнің мәтін бөлігіне тапсырма префиксін қоспауға кеңес береді.\n\nКіріс құрылымы нәтиженің бір біріктірілген нысанды немесе бөлек элементтерді көрсететінін анықтайды. Бірге берілген бірнеше бөлік жинақталған эмбеддинг жасайды; бөлек Content нысандары әр жазбаға бөлек эмбеддинг жасайды. Мәтін мен суреті бар жарияланым үшін біріктірілген көрсетілім олардың байланысын қамти алады. Тәуелсіз ізделетін жазбаларды бөлек ұстаңыз. Бұл таңдау іздеудің түйіршіктілігіне әсер етеді: тұтас жарияланымға бір вектор беру әр үзіндіге немесе суретке бір вектор беруден өзгеше.\n\nНұсқаулық Gemini Embedding 001 және Gemini Embedding 2 векторлары үйлеспейтін кеңістіктерде орналасатынын және оларды тікелей салыстыруға болмайтынын айтады. Ескі модельден көшірілетін жинақ үшін жаңа кеңістікке эмбеддингтерді қайта жасау керек. Модель таңдауы мен өлшемдерді салыстырылатын векторлармен бірізді ұстаңыз және бастапқы мәтін мен медианы сандық индекстен бөлек сақтаңыз. Эмбеддинг ұқсастығы — құжаттың пайдаланушы сұрағына неге жауап беретінін фактімен түсіндіру емес, іздеу сигналы.\n\nПрактикалық каталогта өнім фотосуреті мен бекітілген сипаттамасы бір нысан ретінде табылуы тиіс болса, олардың эмбеддингін бірге жасаңыз. Құжат жинағында нақты тақырыпқа бағытталған үзінділердің эмбеддингін жасап, мақсатқа сай пішімделген сұраумен салыстырыңыз, содан кейін іздеу нәтижесімен бірге бастапқы үзінділерді көрсетіңіз. Аудио немесе бейнеде ізделетін оқиғаны сипаттайтын эпизодты таңдап, бастапқы уақыт аралығын сақтаңыз. Пайдалы нәтиже — қолданбаның келесі іздеу немесе талдау қадамына арналған, бастапқы дәлелдермен байланысқан сандық көрсетілім.",
    "alias_of": null,
    "aliases": [],
    "author": "Google",
    "available": null,
    "canonical_model": "google/gemini-embedding-2",
    "capabilities": {
      "context_length": 8192,
      "manufacturer_input": [
        "text",
        "image",
        "file",
        "audio",
        "video"
      ],
      "manufacturer_output": [
        "embeddings"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000004",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          }
        ],
        "summary": "Конфигурация бағалары туралы толық ақпарат — егжей-тегжейлі мәліметтерде."
      }
    ],
    "ctx": 8192,
    "entity_type": "model",
    "formats": [
      "embeddings"
    ],
    "id": "google/gemini-embedding-2",
    "input": [
      "text",
      "token_ids"
    ],
    "kind": "embedding",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep every vector with its index. Vector count must equal input count; dimensions must be consistent.",
            "errors": [
              {
                "code": null,
                "condition": "Міндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қате",
                "http_status": 400,
                "recovery": "Жаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "job_read": null,
              "mode": "synchronous_json",
              "unknown": "Эмбеддинг тапсырмасы үшін жаңа эндпоинт енгізілмейді."
            },
            "material_combinations": [
              {
                "alternatives": [
                  "string",
                  "string[]",
                  "nonnegative_integer_token_array",
                  "nonnegative_integer_token_array[]"
                ],
                "mode": "text_to_embedding"
              }
            ],
            "operation_modes": [
              "single_embedding",
              "batched_embeddings"
            ],
            "outputs": {
              "all_results": "Әрбір векторды индексімен бірге сақтаңыз. Векторлар саны кіріс элементтерінің санына тең болуы керек; өлшемдері бірдей болуы керек.",
              "default_dimensions": null,
              "family": "embedding",
              "fields": [
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "data[].embedding",
                  "type": "finite float[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "google/gemini-embedding-2"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "budget": {
                  "maximum": 8192,
                  "text_unit": "UTF8 байттары",
                  "token_unit": "токендер массивінің элементтері"
                },
                "conditions": "Бос емес, біртекті пакет. Токендердің ID мәндері — теріс емес бүтін сандар.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "min_items": 1,
                "name": "input",
                "required": true,
                "type": "string|string[]|integer[]|integer[][]"
              },
              {
                "availability": "source_interface",
                "default": "float",
                "default_known": true,
                "enum": [
                  "float"
                ],
                "enum_known": true,
                "name": "encoding_format",
                "required": false,
                "type": "string"
              },
              {
                "availability": "unsupported",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "dimensions",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "session_id",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Дереккөз бұл JSON метадерек өрісіне рұқсат береді; бастапқы провайдердегі нақты мағынасы модельге байланысты.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "source_interface",
                "conditions": "provider.options қабылданбайды",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "mixed input kinds",
              "empty input",
              "image/audio/file objects",
              "encoding_format=base64",
              "dimensions override"
            ]
          },
          "hints": [
            "Әрбір вектордың индексін және өлшемін сақтаңыз.",
            "Модель атауының мультимодаль болуы осы нақты жолда кескін объектілерін қабылдауға рұқсат бермейді."
          ],
          "input": {
            "content_type": "application/json",
            "dimensions_override": false,
            "encoding_format": [
              "float"
            ],
            "input_shapes": [
              "string",
              "string[]",
              "nonnegative_integer_token_array",
              "nonnegative_integer_token_array[]"
            ],
            "material_types": [
              "text",
              "token_ids"
            ],
            "max_input_budget_units": 8192,
            "multimodal_objects": false,
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "mode": "synchronous_json",
            "unknown": "no embedding job endpoint inferred"
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_embedding"
          ],
          "output": {
            "default_dimensions": null,
            "family": "embedding",
            "format": "json",
            "http_success": 200,
            "vectors": "one dense float vector per input; indices/model/usage validated"
          }
        },
        "ctx": 8192,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Токендердің базалық тарифтері",
            "units": [
              {
                "amount": "0.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"google/gemini-embedding-2\", \"input\": [\"First document\", \"Second document\"]}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path(\"result.json\").read_text())\nfor x in r.get(\"data\",[]): print(json.dumps({\"index\":x.get(\"index\"),\"embedding\":x.get(\"embedding\")}))\nPY_RESULT\n",
            "label": "curl · retained exact creation",
            "language": "bash"
          },
          {
            "code": "from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=\"https://api.ailoot.ai/v1\",api_key=os.environ[\"AILOOT_API_KEY\"],max_retries=0)\nresult=client.embeddings.create(model='google/gemini-embedding-2',input=[\"First document\",\"Second document\"])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n",
            "label": "Python SDK · all vectors",
            "language": "python"
          }
        ],
        "family": "openai",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "embeddings",
        "hints": [
          "Keep every vector index and dimension.",
          "Multimodal model name does not admit image objects on this exact path."
        ],
        "http": "POST",
        "in": 0.4,
        "input": [
          "text",
          "token_ids"
        ],
        "label": "Эмбеддинги",
        "max_out": null,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Жылдам режим",
            "value": "Стандартты тариф",
            "when": "Жылдам режим таңдалғанда"
          },
          {
            "label": "Икемді режим",
            "value": "Стандартты тариф",
            "when": "flex режимі таңдалғанда"
          },
          {
            "label": "Ой қорытудың ең жоғары деңгейі",
            "value": "Стандартты тариф",
            "when": "Ой қорыту деңгейі ең жоғары болып, default түзетуі қолданылғанда"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "google/gemini-embedding-2",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.0004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000004",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "google/gemini-embedding-2",
        "request_model_id": "google/gemini-embedding-2",
        "route_label": "Ultra"
      }
    ],
    "name": "Google: Gemini Embedding 2",
    "price": {
      "in": 0.4,
      "in_label": null,
      "out": 0,
      "out_label": null,
      "scope_label": "Token rates",
      "sort_in": 0.4,
      "sort_out": 0,
      "varies": false
    },
    "pricing_profiles": [
      {
        "dimensions": {
          "regime": "base"
        },
        "label": "Эмбеддинги · Base token rates",
        "units": [
          {
            "amount": "0.0004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000004",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    ],
    "public_id": "google/gemini-embedding-2",
    "short": "Gemini Embedding 2 мәтінді, суреттерді, аудионы, бейнені және PDF-ті ортақ сандық кеңістікке бейнелейді. Оның векторлары модальділіктер арасындағы іздеуді, материал табуды, жіктеуді және кластерлеуді қолдайды; өлшемдері икемді, кіріс шегі — 8192 токен."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Gemini Embedding 2 мәтінді, суреттерді, аудионы, бейнені және PDF-ті ортақ сандық кеңістікке бейнелейді. Оның векторлары модальділіктер арасындағы іздеуді, материал табуды, жіктеуді және кластерлеуді қолдайды; өлшемдері икемді, кіріс шегі — 8192 токен.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "bb6b5a69d21fdbcd8b36bf117a381960548eeaa471e633506e43d8266c2e0437",
    "renderer_sha256": "def3bb6e69c8ddb72f88ec6540bbe55d0e503790f964d84073ecda781b13bedf"
  },
  "sourceRevision": "4cfb3731d22a60ffc216ac3bb6d88fa21e19ee6c2ac3a44a977fadb918826ec8"
}
