应用常见问题
如何安装依赖?
以应用 SDK 为 Gradio 为例,将 python 依赖写入 requirements.txt 文件至仓库根目录即可。 以安装 NodeJs 为例,根目录写入 packages.txt 文件,重启应用将会自动使用 apt-get 安装。
当应用 SDK 为 Docker 时,将完全由您自定义环境, 需要您自己执行相关操作,本次竞赛环境中,为正常使用算力,需要使用 registry.gitee-ai.local/base/iluvatar-corex:3.2.0-bi100 作为基础镜像
应用中如何高速下载模型?
使用 transformers、diffusers 、huggingface_hub 等库载入模型将会从 Gitee AI 高速下载。您也可以使 Git 克隆模型。
提示
在 应用 中默认即为内网高速下载。请勿修改环境变量 HF_ENDPOINT
。
下载格式一般为 hf-models/模型名
,举例如下:
- transformers
- huggingface
- diffusers
- git lfs
from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained(
"hf-models/glm-4-9b-chat",
torch_dtype=torch.float16,
low_cpu_mem_usage=True,
trust_remote_code=True,
).to(0).eval()
from huggingface_hub import hf_hub_download
hf_hub_download("hf-models/sdxl-turbo", "sd_xl_turbo_1.0.safetensors", local_dir="./models/checkpoints")
from diffusers import DiffusionPipeline
DiffusionPipeline.from_pretrained("hf-models/sdxl-turbo", variant="fp16", use_safetensors=True, torch_dtype=torch.float16)
git clone https://gitee.com/hf-models/glm-4-9b-chat.git --depth=1 --single-branch --progress --verbose
-c lfs.url="http://lfs-service/hf-models/glm-4-9b-chat" ./checkpoints # 然后可以从 ./checkpoints 文件夹加载模型。
如何使用环境变量、秘钥?
在应用设置-功能中,您可以添加环境变量,使用方法参考: 在应用中使用环境变量、秘钥
如何让团队成员有权限推送代码到仓库?
应用设置 “成员管理” 可前往 Gitee 添加仓库成员。
如果使用 SSH 方式推送代码,需要 Gitee 账号添加 SHH 公钥 https://gitee.com/profile/sshkeys
应用显示 Running 为什么页面没有响应?
- 如果您查看日志,应用运行正常,您可以检查您的应用是否运行在 7860 端口。
- 或者检查应用是否运行在 0.0.0.0 ip 上,如果是其他特定的 ip, 则可能无法访问。
为什么我的应用会出现 CORS、CRSF 等报错,导致页面无法访问?
- 您需要取消应用的访问限制,例如 jupyter-lab, 存在配置
--NotebookApp.allow_remote_access=True
允许远程访问,--NotebookApp.allow_origin=*
允许跨域请求。 Streamlit 也有类似的配置,例如
ENTRYPOINT ["streamlit", "run", "app.py", \
"--server.port=7860",\
"--server.enableCORS=false", \
"--server.headless=true", \
"--server.enableXsrfProtection=false", \
"--server.fileWatcherType=none", \
"--global.developmentMode=false", \
"--server.enableWebsocketCompression=false", \
"--browser.gatherUsageStats=false"]
通常这些配置都可添加到启动参数上。
如何排查错误
您可以点击界面的日志按钮,查询日志信息,以及提供的运行时信息。将会提供当前状态的原因、消息,上次启动失败的报错信息、重启次数、退出码等。