एपीआई प्रलेखन

हमारे साधारण पुनःमेल के साथ आपके कार्यक्रम में शक्‍तिशाली अनुवाद एकीकृत करें.

प्रारंभ किया जा रहा है

अनुवाद के लिए भाषा 180+ भाषाओं के बीच पाठ का अनुवाद करने के लिए एक सरल रिटाक इंटरफेस प्रदान करता है. सभी एपीआई बिन्दु वापस JSON प्रतिक्रिया.

आधार यूआरएल: https://api.translateapi.ai/api/v1/
क्विक स्टार्ट

अपना पहला अनुवाद निवेदन बनाइए:

curl -X POST https://api.translateapi.ai/api/v1/translate/ \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "text": "Hello, world!",
    "target_language": "es"
  }'
import requests

response = requests.post(
    "https://api.translateapi.ai/api/v1/translate/",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "text": "Hello, world!",
        "target_language": "es"
    }
)

result = response.json()
print(result["translated_text"])  # "Hola, mundo!"
const response = await fetch("https://api.translateapi.ai/api/v1/translate/", {
    method: "POST",
    headers: {
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        text: "Hello, world!",
        target_language: "es"
    })
});

const result = await response.json();
console.log(result.translated_text);  // "Hola, mundo!"
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

class Program
{
    static async Task Main()
    {
        var client = new HttpClient();
        client.DefaultRequestHeaders.Add(
            "Authorization", "Bearer YOUR_API_KEY"
        );

        var content = new StringContent(
            JsonConvert.SerializeObject(new {
                text = "Hello, world!",
                target_language = "es"
            }),
            Encoding.UTF8,
            "application/json"
        );

        var response = await client.PostAsync(
            "https://api.translateapi.ai/api/v1/translate/",
            content
        );

        var result = await response.Content.ReadAsStringAsync();
        var data = JsonConvert.DeserializeObject<dynamic>(result);
        Console.WriteLine(data.translated_text);  // "Hola, mundo!"
    }
}

सत्यापन

एपीआई कुंजी का प्रयोग कर अपनी अनुरोधों को सत्यापित करें. आप अपने से एपीआई कुंजी बना सकते हैं. कुंजीपट बनाएं (S).

शीर्षिका जानकारी
Authorization: Bearer ta_your_api_key_here
क्वैरी पैरामीटर
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
अपने एपीआई कुंजियों को सुरक्षित रखें! उन्हें ग्राहक के किनारे या सार्वजनिक भंडार में प्रकट नहीं करें.

पाठ अनुवाद करें

एक एकल लक्ष्य भाषा में पाठ अनुवाद करें.

POST https://api.translateapi.ai/api/v1/translate/
निवेदन शरीर
पैरामीटर क़िस्म आवश्यक वर्णन
text string हाँ अनुवाद करने के लिए पाठ (max50 वर्ण)
target_language string हाँ * Target language code (e.g., "es", "fr", "de")
source_language string नहीं Source language code. Default: "auto" (auto-detect)

* इस्तेमाल target_language एकल भाषा के लिए या target_languages बहुत से लोगों के लिए (ऐरे) देखें. बहु- लक्ष्य अनुवाद.

प्रतिक्रिया
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}

बहु- लक्ष्य अनुवाद

एकल निवेदन में बहुत सी भाषाओं में पाठ का अनुवाद करें. एक ही अनुवाद के रूप में वही अंत बिन्दु इस्तेमाल करें.

आकार बदलें: आप एक ही गुज़ारिश में 50 से भी ज़्यादा भाषाओं में अनुवाद कर सकते हैं ।
POST https://api.translateapi.ai/api/v1/translate/
निवेदन शरीर
{
    "text": "Hello, world!",
    "target_languages": ["es", "fr", "de", "ja"],
    "source_language": "en"
}

प्रयोक्ता target_languages (ऐरे) के बजाए (ऐरे) target_language ( वाक्यांश) बहुत से लक्ष्य के लिए.

प्रतिक्रिया
{
    "source_language": "en",
    "translations": {
        "es": "Hola, mundo!",
        "fr": "Bonjour, monde!",
        "de": "Hallo, Welt!",
        "ja": "こんにちは、世界!"
    },
    "character_count": 52,
    "translation_time": 2.31
}

बैच अनुवाद

अतुल्यकालिक प्रक्रिया के साथ कई पाठों का अनुवाद एक साथ करें. परिणाम के लिए एक बैच और पोल जमा करें.

सीमा: अधिकतम 500 पाठ प्रति मिनट, अधिकतम 750 कुल वस्तुएँ (पाठ लक्ष्य भाषा). कार्य समय प्रक्रिया शुरू होने के बाद 30 मिनट (euert) गणना नहीं की जाती.
प्रक्रिया में समय अलग भाषा द्वारा अलग करता है: सामान्य भाषा (सामान्य भाषा, फ्रांसीसी, जर्मन, जर्मन इत्यादि) तीव्र मॉडल (0.1), और कम भाषाओं में हमारे बड़े- भिन्न मॉडल का प्रयोग करता है। एक 100- दरें विशेष भाषा के लिए 1030 सेकंड में या 2 मिनट कम लोगों के लिए. हर भाषा में सबसे अच्छे परिणाम के लिए, 1 बारी बारी बारी बारी बारी बारी बारी बारी बारी बारी और 50 आकार में लिखें.
POST https://api.translateapi.ai/api/v1/translate/batch/
चरण 1: बैच जमा करें
curl -X POST https://api.translateapi.ai/api/v1/translate/batch/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "texts": ["Hello", "Goodbye", "Thank you"],
    "target_language": "es",
    "source_language": "en"
}'
अनुक्रिया (HTTP2 स्वीकृत)
{
    "job_id": "67535b2b-c9e3-4f82-9499-e237edbc1dd8",
    "status": "pending",
    "total_texts": 3,
    "queue_position": 1,
    "source_language": "en",
    "target_languages": ["es"],
    "character_count": 22,
    "credits_remaining": -1,
    "poll_url": "https://api.translateapi.ai/api/v1/jobs/67535b2b-c9e3-4f82-9499-e237edbc1dd8/"
}
कदम 2: परिणाम के लिए पूल
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
पोलिंग उदाहरण (एंपेथी)
import time, requests

job_id = response.json()["job_id"]
total = response.json()["total_texts"]
headers = {"Authorization": "Bearer YOUR_API_KEY"}

print(f"Batch submitted: {total} texts (job {job_id})")

while True:
    result = requests.get(f"https://api.translateapi.ai/api/v1/jobs/{job_id}/", headers=headers).json()
    status = result["status"]
    processed = result.get("processed_texts", 0)
    progress = result.get("progress_percentage", 0)

    if status == "completed":
        print(f"Completed: {processed}/{total} texts in {result.get('processing_time', 0):.1f}s")
        translations = result["result_data"]["translations"]
        break
    elif status == "failed":
        print(f"Failed at {processed}/{total}: {result.get('error_message', 'unknown')}")
        raise Exception(result.get("error_message", "Translation failed"))
    elif status == "pending":
        queue_pos = result.get("queue_position", "?")
        print(f"Queued (position {queue_pos}) — waiting for GPU worker...")
    else:
        print(f"[{status}] {processed}/{total} ({progress:.0f}%)")

    time.sleep(3)
प्रतिक्रिया (श्वासित — कतार में, जीपीयू के लिए इंतजार करें)
{
    "job_id": "67535b2b-...",
    "status": "pending",
    "processed_texts": 0,
    "total_texts": 3,
    "progress_percentage": 0.0,
    "queue_position": 3
}
अनुक्रिया (फ़ाइल प्रक्रिया)
{
    "job_id": "67535b2b-...",
    "status": "processing",
    "processed_texts": 1,
    "total_texts": 3,
    "progress_percentage": 33.33,
    "queue_position": null
}
अनुक्रिया (संपन्न)
{
    "job_id": "67535b2b-...",
    "status": "completed",
    "processed_texts": 3,
    "total_texts": 3,
    "progress_percentage": 100.0,
    "processing_time": 10.65,
    "result_data": {
        "translations": ["Hola", "Adiós", "Gracias"],
        "source_language": "en",
        "target_language": "es",
        "character_count": 22,
        "processing_time": 10.65
    }
}
वास्तविक समय प्रगति ट्रैकिंग

प्रत्येक सर्वे प्रतिक्रिया में वास्तविक समय प्रगति क्षेत्र शामिल हैं ताकि आप ठीक से देख सकें कि आपके बैच के साथ क्या हो रहा है:

क्षेत्र वर्णन
status वर्तमान कार्य स्थिति: pending (ऐ रसूल उन पैग़म्बरों के साथ झगड़ने वाले) गिरोहों में से यहाँ तुम्हारे मुक़ाबले में भी एक लशकर है जो शिकस्त खाएगा processing (कार्यात्मक अनुवाद), completed, failed
processed_texts बाइबल के अलग - अलग अनुवादों की संख्या अब तक पूरी हो चुकी है ।
total_texts इस बैच में अनुवाद की कुल संख्या (पाठ लक्ष्य भाषा).
progress_percentage प्रतिशत समाप्त (0.- 100). प्रक्रिया / कुल_ पाठ से गणना की गई.
queue_position क़तार में आपकी स्थिति जब स्थिति हो (" = अगला). Null जब प्रक्रिया या पूर्ण हो तो इंतजार करें समय की गणना करें तथा अपने उपयोक्ताओं के लिए कतार स्थिति दिखाएँ.
processing_time सेकण्ड में कुल प्रक्रिया समय (जब पूर्ण हो जाता है).
आकार बदलें: कब status है "pending", माम्बा मज़दूर अन्य बैचियों के साथ व्यस्त हैं. जाँच करें queue_position यह देखने के लिए कि कितनी नौकरी आपकी (1 = आप अगले हैं. आपका काम स्वतः शुरू होगा — कोई भी कार्यवाही नहीं करनी चाहिए, सिर्फ सर्वे रखे रखने के लिए.
बड़े काम के लिए बढ़िया आदतें
  • प्रत्येक बैच निवेदन को 1 लक्ष्य भाषा भेजें. यह प्रत्येक बैच तेजी से रहता है और ट्रैक में प्रगति को आसान बनाता है.
  • 50-100 पाठों पर लाइट रखें. छोटे कवर पूर्ण तेजी से और आप अधिक बार प्रगति अद्यतन दे.
  • मौजूदा जांच कार्य में 2 बारी से चलाएँ. DuPEP प्रक्रिया 2 समानांतर में जोड़ें - अतिरिक्त नौकरियों कतार और तेजी से शुरू नहीं होगा.
  • समय समाप्ति पर, एक नया बैच भेजने के बजाय वही कार्य फिर से शुरू करें. मूल कार्य अभी भी जीपीपी पर प्रोसेस किया जा सकता है.
  • हर 3-5 सेकंड. और भी बार बार सर्वे करने से प्रक्रिया कम नहीं होती.
मल्टी- भाषा बैच

अनेक पाठों को एक साथ अनेक भाषाओं में अनुवाद करें:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
परिणाम समाप्त (_R)
{
    "translations": [
        {"es": "Hola", "fr": "Bonjour"},
        {"es": "Adiós", "fr": "Au revoir"}
    ],
    "source_language": "en",
    "target_languages": ["es", "fr"],
    "character_count": 24,
    "processing_time": 2.45
}
निवेदन पैरामीटर
पैरामीटर क़िस्म आवश्यक वर्णन
texts array हाँ अनुवाद करने के लिए स्ट्रिंग का झोंका
target_language string हाँ * एकल भाषा के लिए लक्ष्य भाषा
target_languages array हाँ * अनेक भाषाओं के लिए लक्ष्य भाषा कोड का इंच
source_language string नहीं Source language code. Default: "auto"

* या तो प्रदान करें target_language या target_languages, दोनों नहीं.

प्रक्रिया को रोकें: बैच निवेदन तुरंत एक के साथ लौटाता है job_id. पोल GET /api/v1/jobs/{job_id}/ जबतक status है "completed"फिर पढ़िए result_data अनुवाद के लिए. इस्तेमाल करें progress_percentage ट्रैक प्रगति पर है.

दस्तावेज़ अनुवाद

फ़ॉर्मेटिंग बनाए जाने के दौरान संपूर्ण दस्तावेज़ अनुवाद करें. बहुत से फ़ाइल फ़ॉर्मेटों को समर्थित करता है.

POST https://api.translateapi.ai/api/v1/translate/document/
निवेदन (अमेटेड पार्ट/ फ़ॉर्मेट- डाटा)
पैरामीटर क़िस्म आवश्यक वर्णन
file file हाँ अनुवाद के लिए दस्तावेज़ (मि. 10MB)
target_language string हाँ Target language code (e.g., "es", "fr", "de")
source_language string नहीं Source language code. Default: "auto" (auto-detect)
समर्थित फ़ाइल प्रकार
  • .txt - सादा पाठ फ़ाइल
  • .docx - शब्द दस्तावेज़
  • .pdf - पीडीएफ़ दस्तावेज़ (अण्डर को सम्मिलित करता है)
  • .json - JSON फ़ाइलें (अनुप्रयोग्स स्ट्रिंग मान)
  • .xml - एक्सएमएल फ़ाइलें
  • .srt - सबटाइटल फ़ाइलें
  • .po / .pot - पाठ अनुवाद फ़ाइल पाएँ
  • .jpg / .jpeg - जेपीईजी छवि (ओआर)
  • .png - पीएनजी छवि (ओआर)
  • .tiff / .tif - टिफ़ छवियाँ (ओसीआर)
  • .bmp - छवियों (ओसीआर)
  • .webp - वेबP छवियाँ (ओआरसी)
ओसीआर समर्थन: छवि फ़ाइलों और को हक़ाई के साथ (ओसीसी) अनुवाद से पहले पाठ को निकालने के लिए प्रोसेस किया जाता है. सबसे अच्छे परिणाम के लिए, साफ- सफाई के लिए इस्तेमाल करें.
उदाहरण (c)URL
# Translate a Word document
curl -X POST https://api.translateapi.ai/api/v1/translate/document/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@document.docx" \
  -F "target_language=es" \
  -F "source_language=en"

# Translate text from an image (OCR)
curl -X POST https://api.translateapi.ai/api/v1/translate/document/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@scanned_page.jpg" \
  -F "target_language=es" \
  -F "source_language=en"
छवि फ़ाइलों को अनुवाद से पहले पाठ निकालने के लिए ओसीआर को प्रोसेस किया जाता है. अनुवादित आउटपुट को एक के रूप में लौटा दिया जाता है .txt फ़ाइल.
प्रतिक्रिया
{
    "id": 123,
    "original_filename": "document.docx",
    "file_type": "docx",
    "source_language": "en",
    "target_language": "es",
    "status": "completed",
    "character_count": 5420,
    "translated_file_url": "/media/translated/document_es.docx",
    "created_at": "2024-01-15T10:30:00Z",
    "completed_at": "2024-01-15T10:30:05Z"
}
स्थिति मान
pending फ़ाइल अपलोड किया जा रहा है, प्रोसेस किया जा रहा है
processing अनुवाद प्रगति में
completed अनुवाद पूर्ण, डाउनलोड उपलब्ध
failed अनुवाद असफल (k_message)
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

दस्तावेज़ अनुवाद की स्थिति जांचें या डाउनलोड यूआरएल को पुनः प्राप्त करें.

प्रतिक्रिया
{
    "id": 123,
    "original_filename": "document.docx",
    "status": "completed",
    "translated_file_url": "/media/translated/document_es.docx",
    "character_count": 5420
}

भाषा पता लगाएँ

भाषा की जांच प्रत्येक अनुवाद निवेदन में की जाती है. सेट करें source_language to "auto" (या इसे छोड़ दें) और पता लगा हुआ भाषा प्रतिक्रिया में वापस आ जाती है.

POST https://api.translateapi.ai/api/v1/translate/
निवेदन शरीर
{
    "text": "Bonjour, comment allez-vous?",
    "target_language": "en"
}
प्रतिक्रिया
{
    "translated_text": "Hello, how are you?",
    "source_language": "fr",
    "target_language": "en",
    "translations": {
        "en": "Hello, how are you?"
    },
    "character_count": 28,
    "translation_time": 0.52
}

वह source_language प्रतिक्रिया में क्षेत्र पता लगा हुआ भाषा प्रदर्शित करता है जब स्वतः जाँच प्रयोग में लिया जाता है.

समर्थित भाषाएँ

सभी समर्थित भाषाओं की सूची प्राप्त करें.

GET https://api.translateapi.ai/api/v1/translate/languages/
प्रतिक्रिया
{
    "count": 186,
    "results": [
        {"iso": "en", "name": "English", "en_label": "English"},
        {"iso": "es", "name": "Español", "en_label": "Spanish"},
        {"iso": "fr", "name": "Français", "en_label": "French"},
        ...
    ]
}

अनुवाद मॉडल

हम सरकार का उपयोग कर रहे स्रोत अनुवाद मॉडल हमारे अपने जीपी में चल रहा है। सभी मॉडल व्यावसायिक लाइसेंस (Apap-सेप 2. 0) कर रहे हैं।

मॉडल भाषाएँ के लिए उत्तम
Helsinki-NLP/opus-mt 50+ भाषा जोड़े आम भाषाएँ (N, ES, RER, HU, RU, JA, JA, आदि)
Google MADLAD-400 400+ भाषाएँ गोल भाषा, व्यापक विस्तार

एपीआई स्वचालित रूप से आपकी भाषा जोड़े के लिए सर्वोत्तम मॉडल चुनता है. आप वैकल्पिक रूप से निर्दिष्ट कर सकते हैं engine पैरामीटर:

इंजिन वर्णन
"auto" तयशुदा. Rance H दबा चेहरा पहले, EDD-400 पर वापस आता है
"huggingface" बाध्य HEGT/MMMYT (तेज, 50+ भाषा)
"madlad" बाध्य ADD-400 (400+ भाषा)

सिंकिंग में त्रुटि

एपीआई मानक HTTP स्थिति कोड का उपयोग सफलता या असफलता को सूचित करने के लिए करता है.

कोड वर्णन
200 सफलता
400 गलत आग्रह - अवैध पैरामीटर
401 अनधिकृत - अमान्य या गुम कुंजी
402 भुगतान जरूरी - दैनिक वर्ण कोटा से अधिक हो गया
429 बहुत से निवेदन सीमा से अधिक हो गए हैं
503 सेवा अनुपलब्ध - अनुवाद इंजन अस्थायी रूप से नीचे
त्रुटि प्रतिक्रिया फ़ॉर्मेट
{
    "error": "daily_limit_exceeded",
    "credits_remaining": 0,
    "daily_limit": 100000
}

दर सीमा

योजनाएँ अलग - अलग होती हैं । स्केलिंग पूरी विवरण

योजना अक्षर/मा मूल्य
मुक्त 250,000 $0 मुक्त पर हस्ताक्षर करें
प्रारंभ 2,500,000 $9/कड़ी मिटाएँ (h) सदस्यता लें (_b)
प्रोग्रेड 10,000,000 $29/कड़ी मिटाएँ (h) सदस्यता लें (_b)
व्यवसाय 40,000,000 $79/कड़ी मिटाएँ (h) सदस्यता लें (_b)
मापक 125,000,000 $199/कड़ी मिटाएँ (h) सदस्यता लें (_b)

जब आप अपनी सीमा से अधिक, आप एक मिल जाएगा 429 Too Many Requests अगले महीने तक प्रतिक्रिया दें या आप उन्नयन करें.

ताला- बंद बादल इन्फ्रास्ट्रक्चर

EVENIVAR को स्वचालित स्केलिंग के साथ समर्पित NVIDPREREPEPEPEPEPEP उदाहरणों पर विचार करता है. जब मांग की जाती है, तब इसके अतिरिक्त जीपी उदाहरणों को मिनटों में तेजी से प्रतिक्रिया रखने के लिए प्रारंभ किया जाता है. इसका अर्थ है कि हमारे एपीआई लगभग बिना लज्जा के अंतिम निवेदन कर सकते हैं — प्रति मिनट के एक मिनट के लिए हज़ारों के लिए एक ही निवेदन कर सकते हैं.

इस पृष्ठ को दर करें
अपने रेटिंग के लिए धन्यवाद!
/5 पर आधारित दरजा