diff --git a/docs/zh/docs/tutorial/first-steps.md b/docs/zh/docs/tutorial/first-steps.md
index c4ff460e0..80a34116a 100644
--- a/docs/zh/docs/tutorial/first-steps.md
+++ b/docs/zh/docs/tutorial/first-steps.md
@@ -11,26 +11,42 @@
```console
-$ uvicorn main:app --reload
+$ fastapi dev main.py
-INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
-INFO: Started reloader process [28720]
-INFO: Started server process [28722]
-INFO: Waiting for application startup.
-INFO: Application startup complete.
-```
+ FastAPI Starting development server 🚀
-
+ Searching for package file structure from directories
+ with __init__.py files
+ Importing from /home/user/code/awesomeapp
-/// note
+ module 🐍 main.py
-`uvicorn main:app` 命令含义如下:
+ code Importing the FastAPI app object from the module with
+ the following code:
-* `main`:`main.py` 文件(一个 Python「模块」)。
-* `app`:在 `main.py` 文件中通过 `app = FastAPI()` 创建的对象。
-* `--reload`:让服务器在更新代码后重新启动。仅在开发时使用该选项。
+ from main import app
-///
+ app Using import string: main:app
+
+ server Server started at http://127.0.0.1:8000
+ server Documentation at http://127.0.0.1:8000/docs
+
+ tip Running in development mode, for production use:
+ fastapi run
+
+ Logs:
+
+ INFO Will watch for changes in these directories:
+ ['/home/user/code/awesomeapp']
+ INFO Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C
+ to quit)
+ INFO Started reloader process [383138] using WatchFiles
+ INFO Started server process [383153]
+ INFO Waiting for application startup.
+ INFO Application startup complete.
+```
+
+
在输出中,会有一行信息像下面这样:
@@ -38,7 +54,6 @@ $ uvicorn main:app --reload
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
```
-
该行显示了你的应用在本机所提供服务的 URL 地址。
### 查看
@@ -63,7 +78,7 @@ INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
前往 http://127.0.0.1:8000/redoc。
-你将会看到可选的自动生成文档 (由 ReDoc 提供):
+你将会看到可选的自动生成文档 (由 ReDoc 提供):

@@ -77,9 +92,9 @@ INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
#### API「模式」
-在这种场景下,OpenAPI 是一种规定如何定义 API 模式的规范。
+在这种场景下,OpenAPI 是一种规定如何定义 API 模式的规范。
-定义的 OpenAPI 模式将包括你的 API 路径,以及它们可能使用的参数等等。
+「模式」的定义包括你的 API 路径,以及它们可能使用的参数等等。
#### 数据「模式」
@@ -93,7 +108,7 @@ OpenAPI 为你的 API 定义 API 模式。该模式中包含了你的 API 发送
#### 查看 `openapi.json`
-如果你对原始的 OpenAPI 模式长什么样子感到好奇,其实它只是一个自动生成的包含了所有 API 描述的 JSON。
+如果你对原始的 OpenAPI 模式长什么样子感到好奇,FastAPI 自动生成了包含所有 API 描述的 JSON(模式)。
你可以直接在:http://127.0.0.1:8000/openapi.json 看到它。
@@ -101,7 +116,7 @@ OpenAPI 为你的 API 定义 API 模式。该模式中包含了你的 API 发送
```JSON
{
- "openapi": "3.0.2",
+ "openapi": "3.1.0",
"info": {
"title": "FastAPI",
"version": "0.1.0"
@@ -140,7 +155,7 @@ OpenAPI 为你的 API 定义 API 模式。该模式中包含了你的 API 发送
`FastAPI` 是直接从 `Starlette` 继承的类。
-你可以通过 `FastAPI` 使用所有的 Starlette 的功能。
+你可以通过 `FastAPI` 使用所有的 Starlette 的功能。
///
@@ -152,34 +167,6 @@ OpenAPI 为你的 API 定义 API 模式。该模式中包含了你的 API 发送
这个实例将是创建你所有 API 的主要交互对象。
-这个 `app` 同样在如下命令中被 `uvicorn` 所引用:
-
-
-
-```console
-$ uvicorn main:app --reload
-
-INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
-```
-
-
-
-如果你像下面这样创建应用:
-
-{* ../../docs_src/first_steps/tutorial002.py hl[3] *}
-
-将代码放入 `main.py` 文件中,然后你可以像下面这样运行 `uvicorn`:
-
-
-
-```console
-$ uvicorn main:my_awesome_api --reload
-
-INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
-```
-
-
-
### 步骤 3:创建一个*路径操作*
#### 路径
@@ -279,13 +266,13 @@ https://example.com/items/foo
/// tip
-您可以随意使用任何一个操作(HTTP方法)。
+你可以随意使用任何一个操作(HTTP方法)。
**FastAPI** 没有强制要求操作有任何特定的含义。
此处提供的信息仅作为指导,而不是要求。
-比如,当使用 GraphQL 时通常你所有的动作都通过 `post` 一种方法执行。
+比如,当使用 GraphQL 时通常你所有的动作都通过 `POST` 一种方法执行。
///
@@ -331,6 +318,6 @@ https://example.com/items/foo
* 导入 `FastAPI`。
* 创建一个 `app` 实例。
-* 编写一个**路径操作装饰器**(如 `@app.get("/")`)。
-* 编写一个**路径操作函数**(如上面的 `def root(): ...`)。
-* 运行开发服务器(如 `uvicorn main:app --reload`)。
+* 编写一个**路径操作装饰器**,如 `@app.get("/")`。
+* 定义一个**路径操作函数**,如 `def root(): ...`。
+* 使用命令 `fastapi dev` 运行开发服务器。