v2’den v3’ye Geçiş Kılavuzu
Bu belge, mevcut kodu Tripo API v2’den v3’ye taşımanıza yardımcı olur.
Skill ile V2’den V3’e geçin
Önce API’ler arasındaki tüm farkları anlamanız gerekmez. Bu Skill’i indirin, dosyayı taşımak istediğiniz proje dizinine yerleştirin ve yapay zekâ kodlama aracınızdan dosyayı kullanmasını isteyin. Skill, projenizdeki V2 çağrılarını bulmanıza ve bunları adım adım V3’e taşımanıza yardımcı olur.
1. Adım: Skill’i indirin
SKILL.md adlı bir dosya alacaksınız. Dosya adını değiştirmeyin.
2. Adım: Proje dizinine yerleştirin ve Skill’i kullanın
İndirdiğiniz SKILL.md dosyasını taşımak istediğiniz projenin dizinine yerleştirin. Ardından projeyi açın ve yapay zekâdan doğrudan bu Skill’i kullanmasını isteyin.
3. Adım: Bu istemi kopyalayarak geçişi başlatın
Taşımak istediğiniz projeyi açın. Aşağıdaki istemin tamamını kopyalayıp yapay zekâ kodlama aracınıza gönderin:
Bu projenin Tripo API entegrasyonunu V2'den V3'e taşımak için proje dizinindeki `SKILL.md` dosyasını kullanın. Önce nelerin değişmesi gerektiğini gösterin. Onayımı bekleyin, ardından değişiklikleri yapın. Son olarak, hiçbir şeyin atlanmadığından emin olmak için dosyadaki kontrol listesini kullanın.
Araç önce V2 çağrılarını bulup size bir plan gösterir; böylece her dosyayı kendiniz aramanız gerekmez.
Büyük Değişiklikler
1. Temel URL Değişikliği
# v2
https://api.tripo3d.ai/v2/openapi/
# v3
https://openapi.tripo3d.ai/v3/
2. Evrensel Uç Noktanın Özel Uç Noktalara Bölünmesi
v2, görev türlerini ayırt etmek için tek bir POST /v2/openapi/task uç noktası ve bir type alanı kullanır. v3, her yetenek için özel bir uç nokta sağlar, böylece type alanına artık gerek kalmaz.
// v2
POST /v2/openapi/task
{ "type": "text_to_model", "prompt": "a cat" }
// v3
POST /v3/generation/text-to-model
{ "prompt": "a cat" }
3. input Alanı Olarak Birleştirilmiş Dosya Girişleri
v2’de giriş kaynağına bağlı olarak file, file_token, url ve object gibi farklı alan adları kullanılır. v3’de bunlar input alanı altında birleştirilir ve sistem giriş türünü otomatik olarak çıkarır.
// v2 - different field names are required
{ "type": "refine_model", "draft_model_task_id": "task_abc123" }
{ "type": "convert_model", "original_model_task_id": "task_abc123" }
// v3 - use input consistently
{ "input": "task_abc123" }
{ "input": "https://example.com/model.glb" }
{ "input": "file_token_abc123" }
4. Standartlaştırılmış Alan Adları
| v2 Alanı | v3 Alanı |
|---|---|
create_time |
created_at |
consumed_credit |
credits_consumed |
5. Metinden Görüntüye ve Görüntüden Görüntüye Bölme
v2’de metinden görüntüye ve görüntüden görüntüye aynı API’yi paylaşır. v3’de bunlar özel uç noktalara bölünmüştür:
POST /v3/generation/text-to-image- Salt metin girişinden resim oluşturPOST /v3/generation/image-to-image- Referans görsele dayalı olarak görsel oluşturun veya düzenleyin
Uç Nokta Eşlemesi
Nesil
| v2 tipi Değer | v3 Uç Nokta |
|---|---|
text_to_model |
POST /v3/generation/text-to-model |
image_to_model |
POST /v3/generation/image-to-model |
multiview_to_model |
POST /v3/generation/multiview-to-model |
text_to_image |
POST /v3/generation/text-to-image |
generate_image |
POST /v3/generation/image-to-image |
generate_multiview_image |
POST /v3/generation/image-to-multiview |
edit_multiview_image |
POST /v3/generation/edit-multiview |
Modeli İşleme
| v2 tipi Değer | v3 Uç Nokta |
|---|---|
refine_model |
POST /v3/models/refine |
convert_model |
POST /v3/models/convert |
import_model |
POST /v3/models/import |
stylize_model |
POST /v3/models/stylize |
texture_model |
POST /v3/models/texture |
Animasyon
| v2 tipi Değer | v3 Uç Nokta |
|---|---|
animate_prerigcheck |
POST /v3/animations/rig-check |
animate_rig |
POST /v3/animations/rig |
animate_retarget |
POST /v3/animations/retarget |
Mesh Düzenleme
| v2 tipi Değer | v3 Uç Nokta |
|---|---|
mesh_segmentation |
POST /v3/mesh/segment |
mesh_completion |
POST /v3/mesh/complete |
highpoly_to_lowpoly |
POST /v3/mesh/decimate |
Görevler ve Dosyalar
| v2 Uç Nokta | v3 Uç Nokta |
|---|---|
GET /v2/openapi/task/{task_id} |
GET /v3/tasks/{task_id} |
POST /v2/openapi/upload |
POST /v3/files |
Geçiş Adımları
1. Adım: URL Tabanını Güncelleyin
# v2
BASE_URL = "https://api.tripo3d.ai/v2/openapi"
# v3
BASE_URL = "https://openapi.tripo3d.ai/v3"
Adım 2: Eşleme Tablosunu Kullanarak Uç Noktaları Değiştirin
# v2
response = requests.post(f"{BASE_URL}/task", json={
"type": "text_to_model",
"prompt": "a cat"
})
# v3
response = requests.post(f"{BASE_URL}/generation/text-to-model", json={
"prompt": "a cat"
})
3. Adım: type Alanını Kaldırma
v3’de uç nokta yolu zaten görev türünü belirtir, dolayısıyla istek gövdesinin artık type alanına ihtiyacı yoktur.
Adım 4: Giriş Alanlarını input ile değiştirin
# v2 - different task types use different field names
payload = {"type": "refine_model", "draft_model_task_id": "task_abc123"}
payload = {"type": "convert_model", "original_model_task_id": "task_abc123"}
# v3 - use input consistently
payload = {"input": "task_abc123"}
5. Adım: Yanıt Alanı Adlarını Güncelleyin
# v2
created = task["create_time"]
cost = task["consumed_credit"]
# v3
created = task["created_at"]
cost = task["credits_consumed"]
Adım 6: Test Edin ve Doğrulayın
- Her uç noktayı teker teker değiştirin ve test edin
- Görev oluşturma ve yoklamanın düzgün şekilde çalıştığını doğrulayın
- İndirme bağlantılarının mevcut olduğunu doğrulayın
- Kredi kesintisi ve bakiye sorgularının düzgün çalışıp çalışmadığını kontrol edin
Notlar
- v2 ve v3 paralel olarak çalışabilir. Tek seferde geçiş yapmak yerine aşamalı olarak geçiş yapmanızı öneririz
- API Keys, v2 ve v3 arasında paylaşılır. Yeni anahtarlar oluşturmanıza gerek yok
- Görev ID biçimi değişmeden kalır. v2’de oluşturulan görevler v3’de sorgulanabilir