API баримт бичиг

Манай энгийн REST API-г ашиглан програмдаа хүчирхэг орчуулгыг нэгтгэ.

Эхлэх

TranslateAPI нь 180+ хэлний хооронд текстийг орчуулах хялбар REST интерфэйсийг санал болгодог. Бүх API эцсийн цэгүүд JSON хариулт өгдөг.

Үндсэн URL: 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!"
    }
}

Идентификатор

Таны хүсэлтийг API түлхүүр ашиглан баталгаажуулна. Та API түлхүүрийг өөрийнхөө програмаас бүтээж болно. удирдлагын самбар.

Дээдсийн баталгаажуулалт (Шилдэг)
Authorization: Bearer ta_your_api_key_here
Асуултын параметр
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
API түлхүүрүүдийг аюулгүй байлга! Хэрэглэгчийн талд код эсвэл нийтийн нөөцөд дэлгэхгүй байх.

Зохиолыг орчуулах

Текстийг нэг зорилготой хэлээр орчуулах.

POST https://api.translateapi.ai/api/v1/translate/
Асуултын бие
Параметрүүд Түлхүүр: Зайлшгүй Тохиргоонууд
text string Тийм ээ Зохиогчийн нэр:
target_language string Тийм* Target language code (e.g., "es", "fr", "de")
source_language string Үгүй Source language code. Default: "auto" (auto-detect)

* Хугацаа target_language (string) нэг хэл эсвэл 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 (string) олон зорилгод.

Хариулт
{
    "source_language": "en",
    "translations": {
        "es": "Hola, mundo!",
        "fr": "Bonjour, monde!",
        "de": "Hallo, Welt!",
        "ja": "こんにちは、世界!"
    },
    "character_count": 52,
    "translation_time": 2.31
}

Бүтээгдэхүүний нэр

Бүрэлдэхүүн хэсгүүдийг хөрвүүлэх

Хязгаар: багц бүрт хамгийн ихдээ 500 текст, нийтдээ хамгийн ихдээ 750 элемент (текст × зорилтот хэл). Ажлууд боловсруулалт эхэлснээс хойш 30 минутын дотор дуусна (үргэлжлүүлэх хугацааг тооцохгүй).
Хийх хугацаа хэлнээс хамаарна: түгээмэл хэлнүүд (Испан, Франц, Герман, гэх мэт) хурдан загвар (~0. 1с/ текст) ашигладаг бол түгээмэл бус хэлнүүд бидний том олон хэлний загвар (~1- 3с/ текст) ашигладаг. 100- текстийн багц нь түгээмэл хэлний хувьд 10- 30 секунд, түгээмэл бус хэлний хувьд 2- 5 минутын дотор хийгддэг. Хамгийн сайн үр дүнд хүрэхийн тулд багцын хүсэлт бүрт 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"
}'
Хариулт (HTTP 202 зөвшөөрөгдсөн)
{
    "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}/
Сорилын жишээ (Python)
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 (цуваанд, GPU ажилтан хүлээж байна), processing ( идэвхтэй орчуулж байна), completed, failed
processed_texts Өнөөдрийн байдлаар дууссан орчуулгын тоо. Бүх текст орчуулагдаж дууссаны дараа бодит цагт шинэчлэгдэнэ.
total_texts Энэ багц дахь нийт орчуулгын тоо (мэдээлэл × зорилтот хэл).
progress_percentage Үр дүнгийн хувь (0- 100). processed_ texts / total_ texts- ээс тооцоолно.
queue_position Хэрэв хүлээгдэж байгаа бол таны дарааллын байршил (1 = дараагийнх). Хэрэв боловсруулсан эсвэл дууссан бол нууц. Үүнийг хүлээх хугацааг тооцоолж хэрэглэгчдэд дарааллын байдлыг харуулахад ашиглана.
processing_time Нийт боловсруулалтын хугацаа (секундэд) (цэвэрлэгдсэний дараа ашиглах боломжтой).
Түлхүүр: Хэрэв status нь "pending", GPU- ийн ажилтнууд бусад багцыг ажиллуулж байна. queue_position Хэр олон ажил таны өмнө байна гэдгийг харахын тулд (1 = та дараагийнх). Таны ажил автоматаар эхэлнэ - ямар ч үйлдэл хийх шаардлагагүй, зүгээр л асуулт асууж бай.
Маш их ачаалалтай ажилд тохиромжтой
  • Нэг багц хүсэлт бүрт 1 зорилтот хэл илгээнэ. Энэ нь багцыг хурдан байлгаж, явцыг хялбархан хянах боломжийг олгоно.
  • 50- 100 мөрийн багцыг хадгалах. Жижиг багцыг хурдан дуусгаж, илүү олон удаа шинэчлэх боломжтой.
  • Хамгийн ихдээ 2-ыг хамтдаа гүйцэтгэнэ. График процессор 2-ыг хамтдаа боловсруулна - нэмэлт ажлууд дараалал үүсгэж хурдасгахгүй.
  • Хугацаа дууссаны дараа, шинэ багц илгээхийн оронд ижил job_id-ийг дахин шалгана. Эхний ажил нь график процессор дээр үргэлжлүүлэн боловсруулагдаж болох юм.
  • 3- 5 секунд тутамд асуулт асуух. Илүү их асуулт асуух нь боловсруулалтыг хурдасгахгүй.
Олон хэлний багц

Олон бичлэгийг нэг дор олон хэлээр орчуулах:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
Үр дүнгийн мэдээ
{
    "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 орчуулгын хувьд. Use progress_percentage үйл явцыг хянана.

Хуулийн орчуулга

Бүх баримт бичгийг хэв маягийг хадгалсан байдлаар орчуулна. Олон файлын форматуудыг дэмждэг.

POST https://api.translateapi.ai/api/v1/translate/document/
Асуулт (мөнх хэсэг/форматын мэдээлэл)
Параметрүүд Түлхүүр: Зайлшгүй Тохиргоонууд
file file Тийм ээ Зохиогчийн нэр:
target_language string Тийм ээ Target language code (e.g., "es", "fr", "de")
source_language string Үгүй Source language code. Default: "auto" (auto-detect)
Тусламжтай файлын төрөл
  • .txt - Зөвхөн текст файлууд
  • .docx - Word баримтууд
  • .pdf - PDF баримтууд (сканнердсан ч гэсэн)
  • .json - JSON файлууд (string утга орчуулдаг)
  • .xml - XML файлууд
  • .srt - Субтитр файлууд
  • .po / .pot - Gettext орчуулгын файлууд
  • .jpg / .jpeg - JPEG зураг (OCR)
  • .png - PNG зураг (OCR)
  • .tiff / .tif - TIFF зураг (OCR)
  • .bmp - BMP зураг (OCR)
  • .webp - WebP зургууд (OCR)
OCR дэмжлэг: Зургийн файлууд болон сканнердсан PDF файлууд орчуулгын өмнө текстийг гаргахын тулд өнгөт дүрс таних (OCR) ашиглан боловсруулагдана. Хамгийн сайн үр дүнд хүрэхийн тулд тод, өндөр нягтралтай зургуудыг ашиглана уу.
Жишээ (cURL)
# 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"
Зургийн файлуудыг орчуулахаас өмнө текстийг олж авахын тулд OCR- ээр боловсруулдаг. Зохиосон гарчиг нь файл хэлбэрээр буцаагддаг. .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 Зохиогч:% 1
failed Зохиогчийн нэр:
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Хуулийн орчуулгын байдлыг шалгах эсвэл татаж авах URL- ийг олж авах.

Хариулт
{
    "id": 123,
    "original_filename": "document.docx",
    "status": "completed",
    "translated_file_url": "/media/translated/document_es.docx",
    "character_count": 5420
}

Хэл мэдрэх

Бүх орчуулгын хүснэгтэд хэлний тодорхойлолт хийгддэг. Set 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"},
        ...
    ]
}

Зохиогчийн эрх

Бид хамгийн сүүлийн үеийн нээлттэй эхийн орчуулгын загваруудыг ашигладаг. Бүх загварууд нь худалдааны лицензтэй (Apache 2. 0).

Модель Хэл Хамгийн сайн
Helsinki-NLP/opus-mt 50+ хэлний хосууд Хамгийн түгээмэл хэлнүүд (EN, ES, FR, DE, IT, PT, RU, ZH, JA, гэх мэт)
Google MADLAD-400 400+ хэл Ховор хэл, өргөн цар хүрээтэй

Энэ API нь таны хэлний хослолын хамгийн тохиромжтой загварыг автоматаар сонгоно. Та өөр сонголт хийж болно. engine Параметр:

Дизелийн Тохиргоонууд
"auto" Өгөгдсөн. Эхлээд HuggingFace ашиглаж, дараа нь MADLAD- 400 ашиглана
"huggingface" HuggingFace/MarianMT (хамгийн хурдан, 50+ хэл)
"madlad" Force MADLAD-400 (400+ хэл)

Зөвшөөрлийн алдаа

API нь амжилт эсвэл алдааг илэрхийлэх стандарт HTTP статус кодуудыг ашигладаг.

Код Тохиргоонууд
200 Үр дүн
400 Муу хүсэлт - Саарал жагсаалт
401 Хуулийг зөрчсөн - API түлхүүр алдагдсан эсвэл хүчингүй
402 Төлбөр шаардагдана - хоногийн тэмдэгтийн хязгаар хэтэрсэн
429 Маш олон хүсэлт - хурдны хязгаар хэтэрсэн
503 Үйлчилгээ байхгүй - орчуулгын машин түр хугацаагаар зогссон
Зөвшөөрлийн хэлбэр
{
    "error": "daily_limit_exceeded",
    "credits_remaining": 0,
    "daily_limit": 100000
}

Хязгаарлалтууд

Хязгаарлалтууд төлөвлөгөөнөөс хамааран өөр өөр байдаг. үнэ Тодорхойлолт:

Зураг төсөл Зураг/сар Үнэ
Чөлөөт 250,000 $0 Үнэгүй бүртгүүлэх
Эхлүүлэгч 2,500,000 $9/сар Нэвтрэх
Про 10,000,000 $29/сар Нэвтрэх
Бизнес 40,000,000 $79/сар Нэвтрэх
Хөдлөх 125,000,000 $199/сар Нэвтрэх

Хэрэв та хязгаарлалтаа давсан бол, та 429 Too Many Requests Дараагийн сар эсвэл шинэчлэх хүртэл хариу өгөхгүй байна.

Auto-Scaling Cloud Infrastructure

TranslateAPI runs on dedicated NVIDIA A100 GPU instances with automatic horizontal scaling. When demand increases, additional GPU instances are launched within minutes to maintain fast response times. This means our API can handle virtually unlimited concurrent requests without degradation — from a single request to thousands per minute.

Энэ хуудсыг үнэл
үнэлгээ өгсөнд баярлалаа!
/5 дээр суурилсан үнэлгээ