Lingara Lingara 文档 学习指南 API 库 应用 构建 网页版
语言: 中文简体

Lingara API 库

本页译自英文。如两者有出入,以英文页面为准。 阅读英文页面

Lingara API 库调用的正是参考文档所描述的那个 API,用的是你已经在写的语言。每个库都由同一份规范生成,遵守同一套约定,所以你在一个库里学到的东西可以直接用到其他库上:

  • 身份验证。 你只需把客户端 ID 和密钥交给客户端一次。它会用它们换取访问令牌、缓存令牌、在令牌过期前不久刷新它,并在 API 返回 401 时用新令牌把调用重试一次。
  • 流。 以流方式返回的操作(例如生成词汇)会以该语言自身的迭代器形式到达。库会解析事件,并在流结束时终止迭代。
  • 错误。 每一个失败都是四种错误之一,它们共享同一个基类型,所以一个处理程序就能全部捕获。
  • 重试。 告知了需要等待多久的 429 或 503 会在一定限度内自动为你重试。其他任何情况都会立即抛出。

这些页面上的每个代码示例都来自已发布的库版本,在发布之前都经过编译和测试。

安装

在下方选择你的语言。每种语言都有自己的页面,介绍第一次调用;使用这些库下的页面会更详细地解释每一项行为。

TypeScript

npm install @lingara/api@0.1.0-alpha.6

Rust

cargo add lingara@0.1.0-alpha.6
cargo add tokio --features macros,rt-multi-thread

Go

go get github.com/Spinning-Cat-Studios/lingara_api_clients/go@v0.1.0-alpha.6

Java

<dependency>
  <groupId>com.getlingara</groupId>
  <artifactId>lingara-java</artifactId>
  <version>0.1.0-alpha.6</version>
</dependency>

Kotlin

implementation("com.getlingara:lingara-kotlin:0.1.0-alpha.6")

Ruby

gem install lingara -v 0.1.0-alpha.6

PHP

composer require spinningcatstudios/lingara:0.1.0-alpha.6

编程语言

  • TypeScript

    适用于 Node.js 的 Lingara API 库,发布在 npm 上。

  • Rust

    适用于异步 Rust 的 Lingara API 库,发布在 crates.io 上。

  • Go

    适用于 Go 的 Lingara API 库,一个除标准库之外没有任何依赖的模块。

  • Java

    适用于 Java 17 及更高版本的 Lingara API 库,发布在 Maven Central 上。

  • Kotlin

    运行在 JVM 上、基于协程构建的 Kotlin 版 Lingara API 库。

  • Ruby

    适用于 Ruby 的 Lingara API 库,一个没有运行时依赖的 gem。

  • PHP

    适用于 PHP 8.2 及更高版本的 Lingara API 库,发布在 Packagist 上。

使用这些库

  • 身份验证

    每个库如何把你的客户端 ID 和密钥换成访问令牌,并让令牌始终保持有效。

  • 流式传输

    库如何交付流式结果,以及流在什么时候结束或失败。

  • 错误与重试

    每个库都会抛出的四种错误,以及它会替你重试哪些失败。