# 安装指南

这些指南将指导你配置特定用例的 Copilot SDK，从个人端项目到为数千个用户提供服务的生产平台。

<!-- markdownlint-disable GHD046 GHD005 -->

<!-- Suppressed: GHD046 (outdated release terminology), GHD005 (hardcoded data variable) -->

## 架构概览

每个Copilot SDK 集成都遵循相同的核心模式：应用程序与 SDK 通信，该 SDK 通过 JSON-RPC 与 Copilot CLI 通信。 在设置中， **CLI 的运行方式**、 **用户身份验证方式**以及 **会话的管理方式**等都发生了哪些更改。

![图示：显示所述过程的流程图。](/assets/images/help/copilot/copilot-sdk/setup-choosing-a-setup-path-diagram-0.png)

以下设置指南可帮助你为方案配置每个层。

## 你是谁？

### 🧑 💻 爱好者

你正在构建个人助理、侧项目或实验应用。 你希望在代码中使用最简单的方法来获取 Copilot。

**首先：**

1. \*\*
   [默认设置（随附的 CLI）](/zh/copilot/how-tos/copilot-sdk/setup/bundled-cli)\*\*—SDK 会自动包含 CLI，安装即可使用
2. \*\*
   [本地 CLI 设置](/zh/copilot/how-tos/copilot-sdk/setup/local-cli)\*\*—使用你自己的 CLI 二进制文件或正在运行的实例（高级）

### 🏢 内部应用开发人员

你正在为团队或公司构建工具。 用户是需要对其企业GitHub帐户或组织成员身份进行身份验证的员工。

**首先：**

1. \*\*
   [GitHub OAuth 设置](/zh/copilot/how-tos/copilot-sdk/setup/github-oauth)\*\* - 让员工使用其GitHub帐户登录
2. \*\*
   [后端服务设置](/zh/copilot/how-tos/copilot-sdk/setup/backend-services)\*\* - 在内部服务中运行 SDK

**如果扩展超出单个服务器：**

1. \*\*
   [多租户与服务器部署](/zh/copilot/how-tos/copilot-sdk/setup/multi-tenancy)\*\* - 为多用户服务器模式配置 SDK 选项
2. \*\*
   [缩放和多租户](/zh/copilot/how-tos/copilot-sdk/setup/scaling)\*\* - 处理多个用户和服务

### 🚀 应用开发人员（ISV）

你要为客户构建产品。 你需要为用户处理身份验证——要么通过 GitHub，要么自行管理用户身份。

**首先：**

1. \*\*
   [GitHub OAuth 设置](/zh/copilot/how-tos/copilot-sdk/setup/github-oauth)\*\* - 让客户使用 GitHub 登录
2. \*\*
   [BYOK （自带密钥）](/zh/copilot/how-tos/copilot-sdk/auth/byok)\*\* - 使用自己的模型密钥自行管理标识
3. \*\*
   [后端服务设置](/zh/copilot/how-tos/copilot-sdk/setup/backend-services)\*\* - 通过服务器端代码为产品提供支持

用于生产：

1. \*\*
   [多租户与服务器部署](/zh/copilot/how-tos/copilot-sdk/setup/multi-tenancy)\*\*—使用 `mode: "empty"`、每个会话的令牌和隔离的运行时状态
2. \*\*
   [缩放和多租户](/zh/copilot/how-tos/copilot-sdk/setup/scaling)\*\* - 可靠地为许多客户提供服务

### 🏗️ 平台开发人员

你正在将 Copilot 嵌入到平台（API、开发人员工具或其他开发人员所构建的基础结构）中。 你需要对会话、缩放和多租户进行精细控制。

**首先：**

1. \*\*
   [后端服务设置](/zh/copilot/how-tos/copilot-sdk/setup/backend-services)\*\* — 核心服务器端集成
2. \*\*
   [多租户与服务器部署](/zh/copilot/how-tos/copilot-sdk/setup/multi-tenancy)\*\* — SDK 级隔离、每会话身份验证和共享运行时选项
3. \*\*
   [缩放和多租户](/zh/copilot/how-tos/copilot-sdk/setup/scaling)\*\* — 会话隔离、水平缩放、持久性

**根据身份验证模型：**

1. \*\*
   [GitHub OAuth 设置](/zh/copilot/how-tos/copilot-sdk/setup/github-oauth)\*\* - 对于经过GitHub身份验证的用户
2. \*\*
   [BYOK （自带密钥）](/zh/copilot/how-tos/copilot-sdk/auth/byok)\*\*—用于自主管理的标识和模型访问

## 决策矩阵

使用此表根据需要执行的操作查找正确的指南：

| 所需内容                                                                                      | 指南 |
| ----------------------------------------------------------------------------------------- | -- |
| 快速入门                                                                                      |    |
| [默认设置（随附的 CLI）](/zh/copilot/how-tos/copilot-sdk/setup/bundled-cli)                        |    |
| 使用自己的 CLI 二进制文件或服务器                                                                       |    |
| [本地 CLI 设置](/zh/copilot/how-tos/copilot-sdk/setup/local-cli)                              |    |
| 用户使用 GitHub 登录                                                                            |    |
| [GitHub OAuth 设置](/zh/copilot/how-tos/copilot-sdk/setup/github-oauth)                     |    |
| 使用自己的模型密钥（OpenAI、Azure 等）                                                                 |    |
| [BYOK （自带密钥）](/zh/copilot/how-tos/copilot-sdk/auth/byok)                                  |    |
| 具有托管标识的 Azure BYOK（无 API 密钥）                                                              |    |
| [支持 BYOK（自带密钥）的 Azure 托管标识](/zh/copilot/how-tos/copilot-sdk/setup/azure-managed-identity) |    |
| 在服务器上运行 SDK                                                                               |    |
| [后端服务设置](/zh/copilot/how-tos/copilot-sdk/setup/backend-services)                          |    |
| 为并发用户配置 SDK 选项                                                                            |    |
| [多租户与服务器部署](/zh/copilot/how-tos/copilot-sdk/setup/multi-tenancy)                          |    |
| 服务多个用户 / 水平扩展                                                                             |    |
| [缩放和多租户](/zh/copilot/how-tos/copilot-sdk/setup/scaling)                                   |    |

## 配置比较

![图示：显示所述过程的流程图。](/assets/images/help/copilot/copilot-sdk/setup-choosing-a-setup-path-diagram-1.png)

## 先决条件

所有指南都假定你有：

* **已安装以下 SDK 之一**（Node.js、Python 和 .NET SDK 会自动包含 CLI）：
  * Node.js：`npm install @github/copilot-sdk`
  * Python： `pip install github-copilot-sdk`
  * Go：`go get github.com/github/copilot-sdk/go`（需要单独安装命令行界面）
  * .NET：`dotnet add package GitHub.Copilot.SDK`

如果你是全新的，请先从 **[构建你的第一个由 Copilot 提供支持的应用](/zh/copilot/how-tos/copilot-sdk/getting-started)** 开始，然后返回此处进行生产配置。

## 后续步骤

从上面的 [决策矩阵](#decision-matrix) 中选择与情况匹配的指南，或从最接近角色的角色描述开始。