当前位置: 首页 > news >正文

网站名称图标如何做才能显示代发关键词包收录

网站名称图标如何做才能显示,代发关键词包收录,网名大全,怎样下载软件到电脑桌面上1. 项目结构 my_project/ │ ├── app/ │ ├── main.py # FastAPI应用的入口 │ ├── services/ # 包含服务逻辑 │ │ └── ollama_service.py │ ├── models/ # 定义数据模型 │ │ └── response.py │ ├─…

1. 项目结构

my_project/
│
├── app/
│   ├── main.py            # FastAPI应用的入口
│   ├── services/          # 包含服务逻辑
│   │   └── ollama_service.py
│   ├── models/            # 定义数据模型
│   │   └── response.py
│   ├── utils/             # 工具类,帮助类
│   │   └── file_utils.py
│   └── Dockerfile         # 用于构建应用的 Dockerfile
│
├── docker-compose.yml     # Docker Compose 配置
└── requirements.txt       # Python依赖

2. 代码实现

2.1 app/main.py — FastAPI 应用入口
from fastapi import FastAPI, File, UploadFile
from fastapi.responses import JSONResponse
from app.services.ollama_service import get_image_response
from app.utils.file_utils import save_temp_image, remove_temp_imageapp = FastAPI()@app.post("/upload-image/")
async def upload_image(file: UploadFile = File(...)):try:# 保存上传的图片为临时文件tmp_path = await save_temp_image(file)# 调用 Ollama 服务处理图片response = await get_image_response(tmp_path)# 删除临时文件await remove_temp_image(tmp_path)return JSONResponse(content={"response": response}, status_code=200)except Exception as e:return JSONResponse(content={"error": str(e)}, status_code=500)
2.2 app/services/ollama_service.py — 处理 Ollama 服务
import ollamaasync def get_image_response(image_path: str):"""调用 Ollama API 获取图像分析结果"""response = ollama.chat(model='llama3.2-vision',messages=[{'role': 'user','content': 'What is in this image?','images': [image_path]}])return response
2.3 app/utils/file_utils.py — 文件操作工具类
import os
from tempfile import NamedTemporaryFile
from fastapi import UploadFileasync def save_temp_image(file: UploadFile):"""保存上传的图片为临时文件"""with NamedTemporaryFile(delete=False, suffix=".jpg") as tmp:tmp.write(await file.read())tmp_path = tmp.namereturn tmp_pathasync def remove_temp_image(file_path: str):"""删除临时文件"""if os.path.exists(file_path):os.remove(file_path)
2.4 app/Dockerfile — Docker 文件
# 使用官方 Python 镜像作为基础镜像
FROM python:3.9-slim# 设置工作目录
WORKDIR /app# 复制本地的 requirements.txt 并安装依赖
COPY requirements.txt /app/requirements.txt
RUN pip install --no-cache-dir -r requirements.txt# 复制本地代码到容器内
COPY ./app /app# 启动 FastAPI 应用
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]
2.5 requirements.txt — Python 依赖
fastapi
uvicorn
ollama
python-multipart
2.6 docker-compose.yml — Docker Compose 配置
version: '3.8'services:app:build: ./appcontainer_name: fastapi-ollamaports:- "8000:8000"volumes:- ./app:/appenvironment:- OLLAMA_API_KEY=your_ollama_api_key  # 如果需要,设置 Ollama API 密钥depends_on:- ollama_api  # 仅在有需要调用 Ollama 服务的情况下

3. 部署流程

  1. 构建 Docker 镜像
    在项目根目录下运行以下命令来构建 Docker 镜像:

    docker-compose build
    
  2. 启动应用
    使用 Docker Compose 启动服务:

    docker-compose up
    

    这会启动 FastAPI 应用,并且在浏览器访问 http://localhost:8000 可以看到 FastAPI 服务正在运行。

  3. 访问上传接口
    使用 Postman 或者任何 HTTP 客户端,向 http://localhost:8000/upload-image/ 发送 POST 请求,上传图像文件,并查看返回的 ollama 结果。

4. 结论

通过这个结构和 Docker Compose 部署方式,项目分层清晰,确保了每个模块的职责单一。main.py 处理 FastAPI 的路由,ollama_service.py 负责与 Ollama 的交互,file_utils.py 负责文件操作,并且整个项目通过 Docker Compose 可以非常方便地部署和管理。

确保在需要调用 Ollama 服务时,有正确的 API 密钥和配置。如果 Ollama 服务本身也需要容器化,你可以在 docker-compose.yml 文件中添加相应的服务配置。

http://www.hkea.cn/news/270883/

相关文章:

  • 设计类的网站和简介关键词优化推广排名多少钱
  • 代理记账网站怎么做北京seo方法
  • cdr做网站企业网站建设的基本流程
  • 网站建设需要哪些硬件百度指数排名
  • 2017年网站开发用什么语言找培训机构的app
  • 澳门响应式网站建设seo入门黑帽培训教程
  • 有哪些网站可以做微商口碑营销案例2021
  • 百度推广要不要建网站网络平台建设及运营方案
  • 大型网站开发考试查网址
  • 网站建设业务市场营销论文搜索优化
  • 黄页88企业名录seo怎么优化武汉厂商
  • 触摸屏网站如何做泰州seo网络公司
  • 银川app购物网站制作公司搜狗收录入口
  • 做单页网站要多少钱wordpress免费网站
  • 网站建设性价比高优化设计官网
  • 电脑手机网站相互跳转西安seo关键词排名优化
  • 一般做网站用什么字体比较合适搜索引擎营销是什么
  • 去什么网站发贴做推广seo及网络推广招聘
  • 如何批量建站什么是互联网营销
  • 哈尔滨网站建设如何搭建一个网站平台
  • 哪些网站可以做任务网络营销推广的基本手段
  • 互联网舆情报告什么是seo营销
  • 餐饮商家做网站的好处沈阳关键词优化费用
  • 如何把网站的文字编辑网站页面优化内容包括哪些
  • 安徽做公司网站哪家好销售策略和营销策略
  • 做游戏都需要什么网站吗域名注册腾讯云
  • 北京建设厅网站谷歌关键词搜索
  • 如何识别一个网站是否做的好谷歌关键词挖掘工具
  • 网站建设专家网店营销推广
  • 做试玩网站搜索引擎优化答案