> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tokenlab.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# إنشاء تفريغ صوتي

> يحوّل الصوت إلى نص باللغة الأصلية للإدخال

## جسم الطلب

**مهلة الطلبات المتزامنة:** ينتظر هذا الـ endpoint غير الخاص بالمحادثة حتى ينتهي النموذج الذي تم التوجيه إليه. قد تتجاوز المدخلات الكبيرة أو الصوت الطويل أو الدُفعات الكبيرة القيمة الافتراضية الشائعة للعميل وهي 30s، لذا اضبط مهلة عميل HTTP على `120s` على الأقل.

<ParamField body="file" type="file" required>
  ملف الصوت المراد تفريغه. التنسيقات المدعومة: flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.
</ParamField>

<ParamField body="model" type="string" default="whisper-1">
  النموذج المراد استخدامه. حاليًا لا يتم دعم سوى `whisper-1`.
</ParamField>

<ParamField body="language" type="string">
  لغة الصوت بتنسيق ISO-639-1 (على سبيل المثال: `en`, `zh`, `ja`).
</ParamField>

<ParamField body="prompt" type="string">
  نص اختياري لتوجيه أسلوب النموذج أو متابعة مقطع سابق.
</ParamField>

<ParamField body="response_format" type="string" default="json">
  تنسيق الإخراج: `json`, `text`, `srt`, `verbose_json`, `vtt`.
</ParamField>

<ParamField body="temperature" type="number" default="0">
  درجة حرارة أخذ العينات (من 0 إلى 1).
</ParamField>

<ParamField body="timestamp_granularities" type="array">
  دقة الطابع الزمني: `word` و/أو `segment`. يتطلب `verbose_json`.
</ParamField>

## الاستجابة

<ResponseField name="text" type="string">
  النص المُفرَّغ.
</ResponseField>

بالنسبة إلى `verbose_json`:

<ResponseField name="task" type="string">
  تكون دائمًا `transcribe`.
</ResponseField>

<ResponseField name="language" type="string">
  اللغة المكتشفة.
</ResponseField>

<ResponseField name="duration" type="number">
  مدة الصوت بالثواني.
</ResponseField>

<ResponseField name="segments" type="array">
  مقاطع التفريغ مع الطوابع الزمنية.
</ResponseField>

<ResponseField name="words" type="array">
  طوابع زمنية على مستوى الكلمات (إذا تم طلبها).
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.tokenlab.sh/v1/audio/transcriptions" \
    -H "Authorization: Bearer sk-your-api-key" \
    -F file="@audio.mp3" \
    -F model="whisper-1" \
    -F language="en"
  ```

  ```python Python theme={null}
  from openai import OpenAI

  client = OpenAI(
      api_key="sk-your-api-key",
      base_url="https://api.tokenlab.sh/v1"
  )

  with open("audio.mp3", "rb") as audio_file:
      response = client.audio.transcriptions.create(
          model="whisper-1",
          file=audio_file,
          language="en"
      )

  print(response.text)
  ```

  ```javascript JavaScript theme={null}
  import OpenAI from 'openai';
  import fs from 'fs';

  const client = new OpenAI({
    apiKey: 'sk-your-api-key',
    baseURL: 'https://api.tokenlab.sh/v1'
  });

  const response = await client.audio.transcriptions.create({
    model: 'whisper-1',
    file: fs.createReadStream('audio.mp3'),
    language: 'en'
  });

  console.log(response.text);
  ```

  ```php PHP theme={null}
  <?php
  $ch = curl_init('https://api.tokenlab.sh/v1/audio/transcriptions');

  $file = new CURLFile('audio.mp3', 'audio/mpeg', 'audio.mp3');

  curl_setopt_array($ch, [
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_POST => true,
      CURLOPT_HTTPHEADER => [
          'Authorization: Bearer sk-your-api-key'
      ],
      CURLOPT_POSTFIELDS => [
          'file' => $file,
          'model' => 'whisper-1',
          'language' => 'en'
      ]
  ]);

  $response = curl_exec($ch);
  curl_close($ch);

  $data = json_decode($response, true);
  echo $data['text'];
  ```
</RequestExample>

<ResponseExample>
  ```json Response (json) theme={null}
  {
    "text": "Hello, this is a test of the transcription API."
  }
  ```

  ```json Response (verbose_json) theme={null}
  {
    "task": "transcribe",
    "language": "english",
    "duration": 5.5,
    "text": "Hello, this is a test of the transcription API.",
    "segments": [
      {
        "id": 0,
        "start": 0.0,
        "end": 2.5,
        "text": "Hello, this is a test",
        "tokens": [...]
      }
    ]
  }
  ```
</ResponseExample>

## الترجمة

لترجمة الصوت إلى الإنجليزية، استخدم endpoint الخاص بالترجمات:

```python theme={null}
response = client.audio.translations.create(
    model="whisper-1",
    file=audio_file
)
```
