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

# 文本转视频

### 如何使用 Sunra API 生成视频

Sunra 提供了一个简单易用的 API，允许您使用预训练模型从提示生成视频。此端点非常适合为社交媒体、营销等各种用例从您的提示创建视频片段。

以下是如何使用 Sunra API 生成视频的示例：

<CodeGroup>
  ```javascript Javascript theme={null}
  import { sunra } from "@sunra/client";

  const result = await sunra.subscribe("kling/kling-v2-master/text-to-video", {
    input: {
      prompt: '一只北极熊在雪中拉小提琴。',
      guidance_scale: 0.5,
      aspect_ratio: '16:9',
      duration: 5
    },
    logs: true,
    onQueueUpdate: (update) => {
      console.log(update)
    },
  });
  console.log(result.data);
  console.log(result.requestId);
  ```

  ```python Python theme={null}
  import sunra_client

  result = sunra_client.subscribe(
      "kling/kling-v2-master/text-to-video",
      arguments={
          "prompt": "一只北极熊在雪中拉小提琴。",
          "guidance_scale": 0.5,
          "aspect_ratio": "16:9",
          "duration": 5
      },
      with_logs=True,
      on_enqueue=print,
      on_queue_update=print,
  )
  print(result)
  ```

  ```java Java theme={null}
  import ai.sunra.client.*;
  import ai.sunra.client.queue.*;
  import java.util.Map;
  import com.google.gson.JsonObject;
  import java.util.function.Consumer;

  ClientConfig config = ClientConfig.builder()
      .withCredentials(CredentialsResolver.fromEnv())
      .build();

  SunraClient client = SunraClient.withConfig(config);
  Map<String, Object> input = Map.of(
      "prompt", "一只北极熊在雪中拉小提琴。",
      "guidance_scale", 0.5,
      "aspect_ratio", "16:9",
      "duration", 5
  );

  Consumer<QueueStatus.StatusUpdate> statusUpdateHandler = update -> {
      String status = update.getStatus().toString();
      String message = String.format("\nStatus Update: %s, Request ID: %s",
          status, update.getRequestId());
      System.out.println(message);
  };

  SubscribeOptions<JsonObject> options = SubscribeOptions.<JsonObject>builder()
      .input(input)
      .resultType(JsonObject.class)
      .onQueueUpdate(statusUpdateHandler)
      .logs(true)
      .build();

  Output<JsonObject> response = client.subscribe("kling/kling-v2-master/text-to-video", options);
  System.out.println("完成！");
  System.out.println(response.getData());
  ```

  ```bash Curl theme={null}
  curl --request POST \
    --url https://api.sunra.ai/v1/queue/kling/kling-v2-master/text-to-video \
    --header "Authorization: Key $SUNRA_KEY" \
    --header "Content-Type: application/json" \
    --data '{"prompt":"一只北极熊在雪中拉小提琴。","negative_prompt":"","guidance_scale":0.5,"aspect_ratio":"16:9","duration":5}'
  ```
</CodeGroup>

```javascript theme={null}
import { sunra } from "@sunra/client";

const result = await sunra.subscribe("kling/kling-v2-master/image-to-video", {
  input: {
  	prompt: '一只可爱的仓鼠悠闲地躺在救生圈上，戴着时尚的太阳镜，在波光粼粼的海面上随着温柔的波浪漂流。仓鼠舒适地斜躺着，享受着宁静愉快的时光。卡通风格，摄像机跟随主体移动，温馨且画质高。',
  	start_image: 'https://assets.sunra.ai/uploads/1748811753168-05ceab0d.png'
  },
  logs: true,
  onQueueUpdate: (update) => {
    console.log(update)
  },
});
console.log(result.data);
console.log(result.requestId);
```

### 如何选择要使用的模型

Sunra 提供各种视频生成模型。您可以根据要生成的视频的风格和质量选择最适合您需求的模型。以下是一些可用的模型：

* [kling/kling-v2-master/text-to-video](https://sunra.ai/models/kling/kling-v2-master/text-to-video)：Kling V2 Master 旨在改善提示遵循、运动动态和视觉美学。
* [wan/wan2.1-vace-14b/text-to-video](https://sunra.ai/models/wan/wan2.1-vace-14b/text-to-video)：一个用于视频创建和编辑的一体化 14B 模型，支持文本转视频、图像转视频和视频编辑等任务，具有多模态输入和高级控制功能。
* [vidu/viduq1/text-to-video](https://sunra.ai/models/vidu/viduq1/text-to-video)：Vidu Q1 — 具有清晰视觉效果、电影转场、精确声音和富有表现力的动画的极致质量。
* [minimax/t2v-01-director/text-to-video](https://sunra.ai/models/minimax/t2v-01-director/text-to-video)："摄像机控制"模型为用户提供具有专业导演流畅性的电影语言，并行使细致的创意控制。

要选择模型，只需在 `subscribe` 方法中指定模型 ID，如上面的示例所示。您可以在[文本转视频模型](https://sunra.ai/models?modalities%5B0%5D=modality-text-video)页面找到更多模型及其描述。
