Spaces:
Sleeping
Sleeping
real-jiakai
commited on
Commit
•
9a1d2d6
1
Parent(s):
ac86214
Update main.py
Browse files
main.py
CHANGED
@@ -1,20 +1,36 @@
|
|
|
|
1 |
from fastapi import FastAPI
|
|
|
|
|
2 |
from fastapi.staticfiles import StaticFiles
|
|
|
|
|
3 |
from fastapi.responses import FileResponse
|
4 |
|
|
|
5 |
from transformers import pipeline
|
6 |
|
|
|
7 |
app = FastAPI()
|
8 |
|
|
|
9 |
pipe_flan = pipeline("text2text-generation", model="google/flan-t5-small")
|
10 |
|
|
|
11 |
@app.get("/infer_t5")
|
|
|
12 |
def t5(input):
|
|
|
13 |
output = pipe_flan(input)
|
|
|
14 |
return {"output": output[0]["generated_text"]}
|
15 |
|
|
|
16 |
app.mount("/", StaticFiles(directory="static", html=True), name="static")
|
17 |
|
|
|
18 |
@app.get("/")
|
|
|
19 |
def index() -> FileResponse:
|
|
|
20 |
return FileResponse(path="/app/static/index.html", media_type="text/html")
|
|
|
1 |
+
# 从 FastAPI 库中导入 FastAPI 类,用于创建应用实例
|
2 |
from fastapi import FastAPI
|
3 |
+
|
4 |
+
# 从 FastAPI 的 staticfiles 模块中导入 StaticFiles 类,用于处理静态文件
|
5 |
from fastapi.staticfiles import StaticFiles
|
6 |
+
|
7 |
+
# 从 FastAPI 的 responses 模块中导入 FileResponse 类,用于返回文件响应
|
8 |
from fastapi.responses import FileResponse
|
9 |
|
10 |
+
# 从 transformers 库中导入 pipeline 函数,用于加载预训练模型管道
|
11 |
from transformers import pipeline
|
12 |
|
13 |
+
# 创建 FastAPI 应用实例
|
14 |
app = FastAPI()
|
15 |
|
16 |
+
# 使用 transformers 的 pipeline 函数加载 Flan-T5 小模型,用于文本生成任务
|
17 |
pipe_flan = pipeline("text2text-generation", model="google/flan-t5-small")
|
18 |
|
19 |
+
# 定义一个 GET 请求的路由,路径为 /infer_t5,用于处理文本生成请求
|
20 |
@app.get("/infer_t5")
|
21 |
+
# 定义处理 /infer_t5 路由的函数,接收一个输入参数
|
22 |
def t5(input):
|
23 |
+
# 使用加载的 Flan-T5 模型管道生成输出
|
24 |
output = pipe_flan(input)
|
25 |
+
# 返回生成的文本结果,格式为 JSON
|
26 |
return {"output": output[0]["generated_text"]}
|
27 |
|
28 |
+
# 挂载静态文件目录,将根路径 "/" 指向 "static" 目录,并启用 HTML 模式
|
29 |
app.mount("/", StaticFiles(directory="static", html=True), name="static")
|
30 |
|
31 |
+
# 定义一个 GET 请求的路由,路径为根路径 "/",用于返回首页
|
32 |
@app.get("/")
|
33 |
+
# 定义处理根路径的函数,返回一个文件响应,类型为 HTML
|
34 |
def index() -> FileResponse:
|
35 |
+
# 返回位于 /app/static/index.html 的 HTML 文件
|
36 |
return FileResponse(path="/app/static/index.html", media_type="text/html")
|