Genmo: Mochi 1
Mochi 1 ialah model teks kepada video Genmo yang berfokus pada imejan realistik, gerakan yang kelihatan dan pematuhan prompt adegan. Sediakan penerangan syot yang konkrit dan periksa jujukan yang siap dari segi aksi, pembingkaian serta ketekalan sepanjang masa.
Tentang model
Huraian ini merangkumi keupayaan model. Input, output dan pilihan yang tersedia di Ailoot disenaraikan di bawah untuk kaedah yang dipilih.
Mochi 1 ialah model teks kepada video Genmo untuk menukar penerangan adegan bertulis kepada imejan bergerak. Pembuatnya menekankan gerakan dan pematuhan prompt, dengan tumpuan visual pada kandungan fotorealistik. Gunakan penerangan syot yang konkrit untuk menjelaskan subjek, latar dan aksi yang patut kelihatan dalam jujukan yang siap.
Tulis aksi sebagai sesuatu yang dapat diikuti oleh penonton. Tangan mengangkat lemon dari mangkuk, basikal melintas di hadapan dinding yang disinari matahari atau burung hinggap pada dahan masing-masing menyediakan peristiwa jelas dengan keadaan pembukaan dan penutup. Tentukan subjek yang menjadi tumpuan adegan, perkara yang berubah semasa syot dan butiran yang perlu kekal jelas semasa bergerak.
Pilih sudut pandangan dan persekitaran yang menyokong aksi tersebut. Pandangan dekat boleh menonjolkan jari yang menyentuh objek, sementara pandangan lebih luas boleh menjelaskan hubungan antara seseorang dengan lokasi. Sertakan butiran bahan, pencahayaan dan latar belakang apabila mempengaruhi hasil yang kelihatan. Pastikan penerangan cukup terfokus supaya gerakan penting tidak bersaing dengan beberapa peristiwa yang tidak berkaitan.
Keluaran Mochi 1 yang diterbitkan pembuatnya mendokumentasikan penjanaan video 480p natif dan menerangkan tumpuan fotorealistik. Rancang adegan yang butiran penentunya kekal jelas pada skala tersebut. Corak halus, wajah kecil di kejauhan dan tulisan yang tepat perlu diperiksa secara berasingan dalam output sebenar; keseluruhan adegan yang meyakinkan tidak membuktikan bahawa setiap ciri kecil kekal terpelihara semasa gerakan.
Genmo mengenal pasti pelengkungan atau herotan sebagai masalah yang mungkin berlaku dalam gerakan ekstrem dan menyatakan bahawa keluaran ini kurang sesuai untuk gaya animasi. Untuk penerangan yang sarat aksi, periksa subjek sepanjang jujukan, khususnya apabila berpusing, berubah arah atau melalui belakang objek lain. Pilih klip yang memaparkan gerakan yang paling sepadan dengan peristiwa yang dimaksudkan, kemudian sasarkan kecacatan bentuk yang khusus dalam semakan kreatif seterusnya.
Pelaksanaan rujukan pembuatnya menyediakan kawalan seperti seed, bilangan bingkai, langkah inferens dan guidance bersama prompt. Kawalan ini menerangkan aliran kerja model rujukan; kawalan yang disediakan oleh kaedah tertentu yang dihoskan disenaraikan bersama kaedah tersebut. Simpan tetapan yang benar-benar digunakan bersama klip yang terhasil supaya perbandingan tidak bergantung pada tetapan lalai yang diandaikan atau parameter daripada pelaksanaan lain.
Gunakan bahan rakaman yang siap sebagai syot konsep, unsur adegan realistik atau klip sumber untuk penyuntingan lanjut. Tonton seluruh jujukan untuk memeriksa urutan dan penyempurnaan aksi yang diminta, kesinambungan subjek serta kegunaan pandangan akhir. Bingkai pembukaan yang kukuh hanyalah satu bahagian daripada syot bergerak yang boleh digunakan.
Simpan video sebenar dan penerangan bertulisnya. Apabila hasil tidak mencapai matlamat, tentukan sama ada masalahnya ialah penerangan adegan, butiran subjek yang tersembunyi, aksi yang mendadak atau pilihan pembingkaian yang tidak sesuai. Ubah bahagian prompt yang relevan sambil mengekalkan subjek dan latar yang berjaya. Bandingkan semakan dengan matlamat visual yang sama, menggunakan seluruh klip dan bukan imej kecil untuk menentukan sama ada hasilnya memenuhi keperluan penyuntingan yang dimaksudkan.
Ailoot Ultra · Penjanaan video POST /v1/videos genmo-mochi-v1
genmo-mochi-v1Pengenalan
Mochi 1 ialah model teks kepada video Genmo yang berfokus pada imejan realistik, gerakan yang kelihatan dan pematuhan prompt adegan. Sediakan penerangan syot yang konkrit dan periksa jujukan yang siap dari segi aksi, pembingkaian serta ketekalan sepanjang masa.
- Input yang diterima
- Teks
- Hasil
- Video
Tersedia di Ailoot · input & kaedah
Ailoot Ultra · Penjanaan video POST /v1/videos
- Input
text- Output
video
| Medan | Jenis | Keperluan | Nilai & had | Lalai |
|---|---|---|---|---|
Medanmodel | Jenisstring | KeperluanDiperlukan | Nilai & had genmo-mochi-v1 Syarat: Gunakan pemilih model Ailoot yang tepat. | Lalai— |
Medanprompt | Jenisstring | KeperluanDiperlukan | Nilai & had Syarat: Huraikan adegan dan pergerakan. | Lalai— |
Parameter kaedah dan kitar hayat
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, prompt |
Parameteroptional | Kontrak |
Parametermaterial_types | Kontraktext |
Parameterconditions | KontrakGunakan pemilih model Ailoot yang tepat., Huraikan adegan dan pergerakan. |
Alias kaedah: /v1/videos/generations
Kitar hayat: 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}
Pelan harga
Cara caj akhir dikira
Kadar yang dipaparkan menganggarkan kos sebelum penjanaan. Caj akhir dikira berdasarkan kos yang direkodkan untuk penjanaan asal. Tempoh output yang diukur dan kuantiti ramalan bukan kuantiti akhir yang boleh dibilkan.
Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.
- Mod pantas
- Tidak dinyatakan Apabila mod pantas dipilih
- Mod flex
- Tidak dinyatakan Apabila mod flex dipilih
- Usaha penaakulan maksimum
- Tidak dinyatakan Apabila usaha penaakulan maksimum menggunakan pelarasan default
Anggaran kadar untuk perbandingan
Harga mengikut konfigurasi
Padankan setiap caj dengan syarat yang dipaparkan. Gunakan satu kadar bagi setiap set konfigurasi alternatif.
| Konfigurasi | Jadual kadar | Kuantiti ramalan | Kuantiti pengebilan | Caj |
|---|---|---|---|---|
| KonfigurasiKadar asas token | Jadual kadarKadar asas | Kuantiti ramalan— | Kuantiti pengebilan— | Caj Input · Token input · Anggaran untuk perbandingan sahaja — / 1K token Output · Token output · Anggaran untuk perbandingan sahaja — / 1K token Input · Bacaan cache · Anggaran untuk perbandingan sahaja — / 1K token Input · Penulisan cache · Anggaran untuk perbandingan sahaja — / 1K token Input · Penulisan cache, 1 jam · Anggaran untuk perbandingan sahaja — / 1K token |
| KonfigurasiBagi setiap permintaan | Jadual kadar— | Kuantiti ramalan— | Kuantiti pengebilansatu permintaan | Caj Input · Anggaran untuk perbandingan sahaja $1 bagi setiap permintaan |
| KonfigurasiAnggaran kos penjanaan | Jadual kadar— | Kuantiti ramalananggaran untuk satu penjanaan | Kuantiti pengebilan— | Caj Output · Anggaran kos penjanaan · Anggaran untuk perbandingan sahaja $1 anggaran sebelum penjanaan Anggaran ini bukan caj tambahan atau kadar tetap bagi penjanaan yang telah selesai. |
Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. Cara rizab dan penyelesaian caj berfungsi →
Contoh permintaan
Ailoot Ultra · Penjanaan video
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
Terima dan simpan hasil
Ailoot Ultra · Penjanaan video
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}
Simpan semua hasil yang selesai
Simpan setiap video yang selesai atau fail yang dikembalikan; dapatkan setiap URL aset yang benar-benar dikembalikan.
Simpan respons dan pengepala lengkap, pengecam asal, setiap output sebenar dan semua medan penggunaan/perakaunan. Simpan setiap aset unik milik anda dan kekalkan setiap peranan yang merujuk kepadanya.
Jika respons asal perlu disemak
Simpan id tugas atau operasi awam yang dikembalikan dan semua pengepala. Baca tugas asal sahaja; unknown atau result_pending_check tidak memberikan kebenaran untuk penciptaan lain.
Medan respons
| Medan | Jenis |
|---|---|
Medanid | Jenisstring |
Medanpolling_url | Jenisstring |
Medanprovider_task_id | Jenisstring |
Medantask_id | Jenisstring |
Medanstatus | Jenisstring |
Medanvideo_url | Jenisstring |
Alias
Alias model
Ailoot Ultra genmo-mochi-v1
Alias laluan kaedah
/v1/videos/generations
ID pemanggil berkaitan
FAQ · Genmo: Mochi 1
- Apakah input dan hasil yang tersedia?
POST /v1/videos·genmo-mochi-v1:text→video- Apakah medan yang digunakan oleh permintaan?
POST /v1/videos·genmo-mochi-v1:model,prompt