Genmo: Mochi 1
Mochi 1 — модель Genmo для создания видео по тексту с акцентом на реалистичные изображения, видимое движение и соблюдение описания сцены. Подготовьте конкретное задание для кадра и проверьте готовую последовательность на действие, кадрирование и согласованность во времени.
О модели
Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.
Mochi 1 — модель Genmo, превращающая письменное описание сцены в движущееся изображение. Производитель подчёркивает движение и следование инструкции с визуальным акцентом на фотореалистичном содержании. Используйте конкретное задание для кадра, описывающее объект, окружение и действие, которые должны быть видны в готовой последовательности.
Описывайте действие так, чтобы зритель мог за ним следить. Рука поднимает лимон из миски, велосипед проезжает мимо освещённой солнцем стены или птица садится на ветку — каждый пример даёт ясное событие с начальным и конечным состоянием. Укажите главный объект сцены, изменения на протяжении кадра и деталь, которая должна оставаться читаемой при движении.
Выбирайте точку наблюдения и среду под это действие. Крупный план может выделить касание предмета пальцами, а более широкий — установить связь человека с местом. Включайте детали материала, света и фона, если они влияют на видимый результат. Сохраняйте достаточную направленность описания, чтобы важное движение не конкурировало с несколькими несвязанными событиями.
Опубликованный выпуск Mochi 1 от производителя документирует собственную генерацию видео 480p и описывает фотореалистичную направленность. Планируйте сцену так, чтобы решающие детали оставались читаемыми в этом масштабе. Мелкие узоры, небольшие удалённые лица и точные надписи требуют отдельной проверки в самом выводе; убедительная общая сцена не устанавливает сохранение каждой мелкой детали в движении.
Genmo называет деформации или искажения возможной проблемой при экстремальном движении и отмечает меньшую пригодность выпуска для анимационных стилей. В задании с активным действием проверяйте объект на протяжении всей последовательности, особенно при повороте, смене направления или проходе за другим объектом. Выберите клип, видимое движение которого лучше соответствует задуманному событию, затем направьте следующую творческую правку на конкретную деформацию.
Эталонная реализация производителя предоставляет вместе с инструкцией такие параметры, как seed, число кадров, шаги вычисления модели и направляющее воздействие. Они описывают эталонный процесс модели; параметры конкретного размещённого метода перечислены для этого метода. Сохраняйте фактически использованные настройки вместе с клипом, чтобы сравнение не зависело от предполагаемого значения по умолчанию или параметра другой реализации.
Используйте готовый видеоматериал как концептуальный кадр, реалистичный элемент сцены или исходный клип для дальнейшего монтажа. Просматривайте всю последовательность, проверяя порядок и завершение запрошенного действия, непрерывность объекта и пригодность конечного вида. Сильный начальный кадр — лишь часть полезного движущегося плана.
Сохраняйте фактическое видео и его письменное задание. При несоответствии цели определите проблему: описание сцены, скрытая деталь объекта, резкое действие или неудачное кадрирование. Меняйте нужную часть инструкции, сохраняя удачные объект и окружение. Сравнивайте правку с той же видимой целью, решая по полному клипу, а не миниатюре, подходит ли он для предполагаемого монтажа.
Ailoot Ultra · Видео POST /v1/videos genmo-mochi-v1
genmo-mochi-v1Начало
Mochi 1 — модель Genmo для создания видео по тексту с акцентом на реалистичные изображения, видимое движение и соблюдение описания сцены. Подготовьте конкретное задание для кадра и проверьте готовую последовательность на действие, кадрирование и согласованность во времени.
- Допустимые входные данные
- Текст
- Результаты
- Видео
Доступно в Ailoot · входные данные и методы
Ailoot Ultra · Видео POST /v1/videos
- Входные данные
text- Результат
video
| Поле | Тип | Требование | Значения и ограничения | По умолчанию |
|---|---|---|---|---|
Полеmodel | Типstring | ТребованиеОбязательно | Значения и ограничения genmo-mochi-v1 Условия: Используйте точный идентификатор модели Ailoot. | По умолчанию— |
Полеprompt | Типstring | ТребованиеОбязательно | Значения и ограничения Условия: Опишите сцену и движение. | По умолчанию— |
Параметры и жизненный цикл метода
| Параметр | Контракт |
|---|---|
Параметрcontent_type | Контрактapplication/json |
Параметрrequired | Контрактmodel, prompt |
Параметрoptional | Контракт |
Параметрmaterial_types | Контрактtext |
Параметрconditions | КонтрактИспользуйте точный идентификатор модели Ailoot., Опишите сцену и движение. |
Псевдонимы метода: /v1/videos/generations
Жизненный цикл: submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Тарифы
Как рассчитывается итоговая плата
Отображаемые тарифы позволяют оценить стоимость до генерации. Итоговое списание рассчитывается по стоимости, записанной для исходной генерации. Измеренная длительность результата и прогнозные объёмы не являются итоговым оплачиваемым объёмом.
Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.
- Быстрый режим
- Не указано При выборе быстрого режима
- Режим flex
- Не указано При выборе режима flex
- Максимальная интенсивность рассуждений
- Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)
Оценочные ставки для сравнения
Цены по конфигурациям
Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.
| Конфигурация | Шкала ставок | Прогноз количества | Расчётное количество | Плата |
|---|---|---|---|---|
| КонфигурацияБазовые тарифы на токены | Шкала ставокБазовая ставка | Прогноз количества— | Расчётное количество— | Плата Вход · Входные токены · Оценка только для сравнения — / 1K токенов Выход · Выходные токены · Оценка только для сравнения — / 1K токенов Вход · Чтение кэша · Оценка только для сравнения — / 1K токенов Вход · Запись в кэш · Оценка только для сравнения — / 1K токенов Вход · Запись в кэш, 1 час · Оценка только для сравнения — / 1K токенов |
| КонфигурацияЗа запрос | Шкала ставок— | Прогноз количества— | Расчётное количествоОдин запрос | Плата Вход · Оценка только для сравнения $1 за запрос |
| КонфигурацияОриентировочная стоимость генерации | Шкала ставок— | Прогноз количестваОценка для одной генерации | Расчётное количество— | Плата Выход · Оценочная стоимость генерации · Оценка только для сравнения $1 оценка до генерации Эта оценка не является дополнительным списанием или фиксированным тарифом для завершённой генерации. |
Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →
Примеры запросов
Ailoot Ultra · Видео
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON'
{
"model": "genmo-mochi-v1",
"prompt": "A cat is walking on grass."
}
JSON
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
# Create once; retain id, polling_url, original task identifiers and every header.
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("status.json").read_text())
roles={}
def visit(v,path=""):
if isinstance(v,dict):
for k,x in v.items(): visit(x,path+"/"+k)
elif isinstance(v,list):
for i,x in enumerate(v): visit(x,path+"/"+str(i))
elif isinstance(v,str):
u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
target=Path(f"asset-{i}.bin")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
raw=target.read_bytes()
if not raw: raise SystemExit("Empty asset; retain original status and metadata")
ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
name=f"asset-{i}.{ext}"
if target.name!=name: target.rename(name)
manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS
Получить и сохранить результаты
Ailoot Ultra · Видео
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Сохраняйте все готовые результаты
Сохраните каждое готовое видео или полученный файл; загрузите содержимое по каждому фактически полученному URL материала.
Сохраните полный ответ и заголовки, исходные идентификаторы, каждый фактический результат и все поля использования и учёта. Сохраните каждый уникальный ресурс, принадлежащий Ailoot, и каждую роль, которая на него ссылается.
Если нужно проверить исходный ответ
Сохраните возвращённый публичный id задачи или операции и все заголовки. Проверяйте только исходную задачу; unknown или result_pending_check не разрешают создавать новую.
Поля ответа
| Поле | Тип |
|---|---|
Полеid | Типstring |
Полеpolling_url | Типstring |
Полеprovider_task_id | Типstring |
Полеtask_id | Типstring |
Полеstatus | Типstring |
Полеvideo_url | Типstring |
Псевдонимы
Псевдонимы моделей
Ailoot Ultra genmo-mochi-v1
Псевдонимы путей метода
/v1/videos/generations
Связанные ID для вызова
FAQ · Genmo: Mochi 1
- Какие входные данные и результаты доступны?
POST /v1/videos·genmo-mochi-v1:text→video- Какие поля использует запрос?
POST /v1/videos·genmo-mochi-v1:model,prompt