models

OpenAI: Text Embedding 3 Small

Markdown · JSON

OpenAI: Text Embedding 3 Small

Малая текстовая модель эмбеддингов третьего поколения OpenAI по умолчанию возвращает векторы размерности 1536 и поддерживает более короткие представления. Используйте числовой выход для семантического поиска, поиска кода, группировки, рекомендаций и классификации.

О модели

Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.

text-embedding-3-small — меньшая текстовая модель эмбеддингов третьего поколения OpenAI. Она преобразует письменные материалы в числовые векторы с 1536 компонентами по умолчанию. Эти векторы измеряют связи между текстами для последующего этапа поиска или анализа; модель не генерирует разговорный ответ на вход.

Как и большая модель третьего поколения, она поддерживает параметр производителя dimensions для более коротких эмбеддингов. Обучение рассчитано на сохранение информации, представляющей понятия, в укороченном векторе; выбор размера влияет на качество и ресурсные требования приложения. Сохраняйте одинаковые модель и выбранную размерность для сравниваемых записей и запросов.

Практическое применение — поиск кода. Руководство производителя описывает представление исходных функций текстом и создание их эмбеддингов, затем создание эмбеддинга запроса на естественном языке той же моделью и сравнение полученных векторов. Пример результата — ранжированный набор подходящих функций, связанных с их расположением в исходниках. Для поиска документов аналогичный результат — набор фрагментов, чей текст и исходные ссылки остаются доступны читателю или следующей модели.

Другие документированные применения включают кластеризацию, рекомендации связанного контента, классификацию, обнаружение выбросов и измерение разнообразия. Целевой процесс работы с сообщениями может группировать сходные запросы или сравнивать их с описаниями категорий. Приложение определяет, как результат сходства превращается в категорию, рекомендацию или запись для проверки; сам эмбеддинг остаётся числовыми данными.

OpenAI задаёт максимальный вход 8192 токена на текст. API эмбеддингов принимает строки или токенизированный вход и несколько входов в одном запросе, отклоняет пустые строки и применяет совокупный лимит 300 000 токенов. Подготавливайте длинные материалы как осмысленные фрагменты и сохраняйте названия или определения, необходимые для их понимания. Используйте единый набор полей источника вместо создания эмбеддингов разных видов записей по несвязанным правилам подготовки.

Производитель по умолчанию возвращает векторы с плавающей точкой и также документирует кодировку base64. Руководство указывает, что эмбеддинги OpenAI нормализованы до единичной длины, и рекомендует косинусное сходство; скалярное произведение позволяет вычислить его, а евклидово расстояние даёт то же ранжирование. Если эмбеддинг третьего поколения вручную сокращается после получения, снова нормализуйте укороченный вектор, как описывает руководство. Параметр dimensions позволяет не превращать ручное усечение в обычный этап подготовки.

Записывайте идентичность модели, размерность и ссылку на источник вместе с каждым вектором. Полезный последующий результат — ранжированный список, сгруппированная коллекция или набор классификационных признаков, связанных с породившим их текстом. Проверяйте, действительно ли выбранный материал поддерживает задачу, и отделяйте отсутствие фактов от семантической связанности. Следующий этап сможет использовать представление для конкретного процесса поиска или принятия решений.

Ailoot Ultra · Эмбеддинги POST /v1/embeddings openai/text-embedding-3-small

openai/text-embedding-3-small

OpenAI /openai/text-embedding-3-small
ID модели
  • openai/text-embedding-3-small
  • text-embedding-3-small

Начало

Малая текстовая модель эмбеддингов третьего поколения OpenAI по умолчанию возвращает векторы размерности 1536 и поддерживает более короткие представления. Используйте числовой выход для семантического поиска, поиска кода, группировки, рекомендаций и классификации.

Допустимые входные данные
Текст · token_ids
Результаты
embedding

Доступно в Ailoot · входные данные и методы

Ailoot Ultra · Эмбеддинги POST /v1/embeddings
Входные данные
text, token_ids
Результат
embedding
Контекст
8 192 tokens
Выходной формат
json
ПолеТипТребованиеЗначения и ограниченияПо умолчанию
ПолеmodelТипstringТребованиеОбязательноЗначения и ограничения
openai/text-embedding-3-small
По умолчанию—
ПолеinputТипstring|string[]|integer[]|integer[][]ТребованиеОбязательноЗначения и ограничения
Минимум элементов: 1
Условия: Непустой однородный пакет. ID токенов — неотрицательные целые числа.
Входной бюджет: Максимум: 8 192 · Текстовая единица: байты UTF8 · Единица токенов: элементы массива токенов
По умолчанию—
Полеencoding_formatТипstringТребованиеНеобязательноЗначения и ограничения
float
По умолчаниюfloat
ПолеdimensionsТипintegerТребованиеНе поддерживаетсяЗначения и ограничения
Минимум: 1
По умолчанию—
ПолеuserТипjson_valueТребованиеНеобязательноЗначения и ограничения
Условия: Source допускает это поле метаданных JSON; точная семантика у исходного поставщика зависит от модели.
По умолчанию—
Полеsession_idТипjson_valueТребованиеНеобязательноЗначения и ограничения
Условия: Source допускает это поле метаданных JSON; точная семантика у исходного поставщика зависит от модели.
По умолчанию—
ПолеtraceТипjson_valueТребованиеНеобязательноЗначения и ограничения
Условия: Source допускает это поле метаданных JSON; точная семантика у исходного поставщика зависит от модели.
По умолчанию—
ПолеproviderТипobjectТребованиеНеобязательноЗначения и ограничения
Условия: provider.options отклоняется
По умолчанию—
Сочетания входных материалов

text_to_embedding

Параметры и жизненный цикл метода
ПараметрКонтракт
Параметрcontent_typeКонтрактapplication/json
ПараметрrequiredКонтрактmodel, input
Параметрinput_shapesКонтрактstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Параметрencoding_formatКонтрактfloat
Параметрdimensions_overrideКонтрактfalse
Параметрmax_input_budget_unitsКонтракт8192
Параметрmultimodal_objectsКонтрактfalse
Параметрmaterial_typesКонтрактtext, token_ids

Жизненный цикл: synchronous_json

Сохраняйте индекс и размерность каждого вектора.

Название мультимодальной модели не означает допуск объектов изображений на этом конкретном маршруте.

Тарифы

Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.

Быстрый режим
Стандартный тариф При выборе быстрого режима
Режим flex
Стандартный тариф При выборе режима flex
Максимальная интенсивность рассуждений
Стандартный тариф При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)

Ставки Ailoot

Цены по конфигурациям

КонфигурацияШкала ставокПлата
КонфигурацияБазовые ставки за токеныШкала ставокБазовая ставкаПлата
Вход · Входные токены $0.00004 / 1K токенов
Выход · Выходные токены $0 / 1K токенов
Вход · Чтение кэша — / 1K токенов
Вход · Запись в кэш — / 1K токенов
Вход · Запись в кэш, 1 час — / 1K токенов

Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →

Примеры запросов

Ailoot Ultra · Эмбеддинги

curlPython SDK
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/text-embedding-3-small", "input": ["First document", "Second document"]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os

client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='openai/text-embedding-3-small',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)

Получить и сохранить результаты

Ailoot Ultra · Эмбеддинги

json

Сохраняйте все готовые результаты

Сохраняйте каждый полностью полученный ответ, файл и элемент содержимого.

Сохраняйте каждый вектор с его индексом. Число векторов должно совпадать с числом входных элементов; размерности должны быть согласованы.

Если нужно проверить исходный ответ

Отдельный эндпоинт заданий эмбеддингов не вводится.

Поля ответа
ПолеТип
ПолеobjectТипstring
ПолеmodelТипstring
Полеdata[].indexТипinteger
Полеdata[].embeddingТипfinite float[]
ПолеusageТипobject
Ошибки и дальнейшие шаги
ОтветУсловиеСледующий шаг
Ответ400 · invalid_request_errorУсловиеНеверные обязательные поля, представление материалов или значение параметраСледующий шагИсправьте указанные поля перед новым запросом на создание.

Псевдонимы

Псевдонимы моделей

Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small

Псевдонимы путей метода

Используйте пути методов, указанные выше.

Связанные ID для вызова

openai/text-embedding-3-small, text-embedding-3-small

Ailoot Ultra · Векторные представления · text-embedding-3-small POST /v1/embeddings text-embedding-3-small

text-embedding-3-small

OpenAI /text-embedding-3-small
ID модели
  • openai/text-embedding-3-small
  • text-embedding-3-small

Начало

Малая текстовая модель эмбеддингов третьего поколения OpenAI по умолчанию возвращает векторы размерности 1536 и поддерживает более короткие представления. Используйте числовой выход для семантического поиска, поиска кода, группировки, рекомендаций и классификации.

Допустимые входные данные
Текст
Результаты
embedding

Доступно в Ailoot · входные данные и методы

Ailoot Ultra · Векторные представления · text-embedding-3-small POST /v1/embeddings
Входные данные
text
Результат
embedding
Контекст
8 192 tokens
Выходной формат
json
ПолеТипТребованиеЗначения и ограниченияПо умолчанию
ПолеmodelТипstringТребованиеОбязательноЗначения и ограничения
text-embedding-3-small
По умолчанию—
ПолеinputТипstring|string[]|integer[]|integer[][]ТребованиеОбязательноЗначения и ограничения
Минимум элементов: 1
Условия: Непустой однородный пакет. ID токенов — неотрицательные целые числа.
Входной бюджет: Максимум: 8 192 · Текстовая единица: байты UTF8 · Единица токенов: элементы массива токенов
По умолчанию—
Полеencoding_formatТипstringТребованиеНеобязательноЗначения и ограничения
float
По умолчаниюfloat
ПолеdimensionsТипintegerТребованиеНе поддерживаетсяЗначения и ограничения
Минимум: 1
По умолчанию—
ПолеuserТипjson_valueТребованиеНеобязательноЗначения и ограничения
Условия: Необязательные метаданные JSON; точная семантика поставщика зависит от выбранной модели.
По умолчанию—
Полеsession_idТипjson_valueТребованиеНеобязательноЗначения и ограничения
Условия: Необязательные метаданные JSON; точная семантика поставщика зависит от выбранной модели.
По умолчанию—
ПолеtraceТипjson_valueТребованиеНеобязательноЗначения и ограничения
Условия: Необязательные метаданные JSON; точная семантика поставщика зависит от выбранной модели.
По умолчанию—
ПолеproviderТипobjectТребованиеНеобязательноЗначения и ограничения
Условия: provider.options отклоняется
По умолчанию—
Сочетания входных материалов

text_to_embedding

Параметры и жизненный цикл метода
ПараметрКонтракт
Параметрcontent_typeКонтрактapplication/json
ПараметрrequiredКонтрактmodel, input
Параметрinput_shapesКонтрактstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Параметрencoding_formatКонтрактfloat
Параметрdimensions_overrideКонтрактfalse
Параметрmax_input_budget_unitsКонтракт8192
Параметрmultimodal_objectsКонтрактfalse
Параметрmaterial_typesКонтрактtext
Параметрtext_file_materialКонтрактПрочитайте фактический документ UTF-8 и поместите его текст в указанную строку входа или содержимого сообщения.

Жизненный цикл: synchronous_json

Передайте точный ID модели и обязательные поля.

Сохраняйте каждый возвращённый элемент и его исходные идентификаторы.

Тарифы

Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.

Быстрый режим
Стандартный тариф При выборе быстрого режима
Режим flex
Стандартный тариф При выборе режима flex
Максимальная интенсивность рассуждений
Стандартный тариф При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)

Ставки Ailoot

Цены по конфигурациям

КонфигурацияШкала ставокПлата
КонфигурацияБазовые ставки за токеныШкала ставокБазовая ставкаПлата
Вход · Входные токены $0.00004 / 1K токенов
Выход · Выходные токены $0 / 1K токенов
Вход · Чтение кэша — / 1K токенов
Вход · Запись в кэш — / 1K токенов
Вход · Запись в кэш, 1 час — / 1K токенов

Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →

Примеры запросов

Ailoot Ultra · Векторные представления · text-embedding-3-small

Полное минимальное тело запроса в формате JSONcurl · используйте свой документ UTF-8Python · сохраните полный результат
{
  "model": "text-embedding-3-small",
  "input": [
    "First document",
    "Second document"
  ],
  "encoding_format": "float"
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-small', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
    print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-small', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'Authorization': 'Bearer PLACEHOLDER_KEY', 'Content-Type': 'application/json'}
headers['Authorization'] = 'Bearer ' + api_key
request = Request('https://api.ailoot.ai/v1/embeddings', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
    print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))

Получить и сохранить результаты

Ailoot Ultra · Векторные представления · text-embedding-3-small

json

Сохраняйте все готовые результаты

Сохраняйте каждый полностью полученный ответ, файл и элемент содержимого.

Сохраняйте каждый вектор с конечными значениями и его исходным индексом. Сохраняйте все измерения и весь объект usage.

Если нужно проверить исходный ответ

Отдельный эндпоинт заданий эмбеддингов не вводится.

Поля ответа
ПолеТип
ПолеobjectТипstring
ПолеmodelТипstring
Полеdata[].indexТипinteger
Полеdata[].embeddingТипfinite float[]
ПолеusageТипobject
Ошибки и дальнейшие шаги
ОтветУсловиеСледующий шаг
Ответ400 · invalid_request_errorУсловиеНеверные обязательные поля, представление материалов или значение параметраСледующий шагИсправьте указанные поля перед новым запросом на создание.

Псевдонимы

Псевдонимы моделей

Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small

Псевдонимы путей метода

Используйте пути методов, указанные выше.

Связанные ID для вызова

openai/text-embedding-3-small, text-embedding-3-small

FAQ · OpenAI: Text Embedding 3 Small
Какие входные данные и результаты доступны?

POST /v1/embeddings · openai/text-embedding-3-small: text, token_ids → embedding

POST /v1/embeddings · text-embedding-3-small: text → embedding

Какие поля использует запрос?

POST /v1/embeddings · openai/text-embedding-3-small: model, input, encoding_format, provider

POST /v1/embeddings · text-embedding-3-small: model, input, encoding_format, provider

Какие ограничения действуют?

POST /v1/embeddings · openai/text-embedding-3-small: ctx: 8192; input.budget.maximum: 8192 (байты UTF8); input.min_items: 1

POST /v1/embeddings · text-embedding-3-small: ctx: 8192; input.budget.maximum: 8192 (байты UTF8); input.min_items: 1

Подробнее

Подключите Ailoot к Claude Code, OpenCode, Hermes или своему приложению.

Компания и портфель её проектов

Компания и портфель её проектов: миллионы клиентов; продажи на миллиарды ежемесячно.

Покупайте токены со скидкой.

Скидка по подписке для регулярной работы. Промокоды — до 50% на покупку токенов.

Подписка
Выберите тариф со скидкой для своих регулярных запросов.
Промокод до 50%
Введите код при покупке. Цена пересчитается с учётом действующей акции.
Расходы в истории
Модель, токены и сумма сохраняются для каждого запроса.

Выбрать подписку · Посмотреть цены моделей

Подключайте API к продукту, который вы продаёте.

SaaS, приложения и боты — по оферте и лицензионному договору Ailoot. Для перепродажи запросите реселлерскую лицензию.

Коммерческое приложение
Встраивайте генерацию текста, картинок, видео и звука в платные функции своего сервиса.
Лицензия для реселлера
Пришлите описание проекта и схему доступа. Запросите письменные условия использования и перепродажи.
Документы на сайте
Оферта, лицензионный договор и политика обработки данных доступны до подключения.

Запросить реселлерскую лицензию · Оферта и лицензионный договор