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

本地安装部署Unstructured-api

本地安装Unstructured-api

  • 1. 源码部署
    • 创建环境并激活
    • 安装依赖
    • 启动项目
    • 调试项目
  • 2. Docker部署
    • 1. 下载镜像
    • 2. 启动容器
  • 3. 结束
  • 4.遇到问题(在更新......)

1. 源码部署

  1. 需要提前安装->uv

  2. 前往[Github地址](GitHub - Unstructured-IO/unstructured-api) 下载源码或者直接执行git clone命令

    $ git clone https://github.com/Unstructured-IO/unstructured-api.git
    

    创建环境并激活

$ uv venv
$ source .venv/bin/activate

安装依赖

进入源码地址目录unstructured-api下执行以下命令

$ uv pip install  -r requirements/base.in

启动项目

$ uvicorn prepline_general.api.app:app --host 0.0.0.0 --port 8888 --reload 

调试项目

本文示例是在VS Code中调试,步骤如下:

  1. 打开VS Code,点击左侧面板中的菜单的Run And Debugger,点击创建launch.json文件

  2. 在弹开的Select debugger窗口中选择Python Debugger,再在弹开的Debug Configuration窗口中选择FastAPI

  3. 在自动创建的launch.json文件中贴上以下内容

    {// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "FastAPI: Python Debugger","consoleName": "FastAPI","type": "debugpy","request": "launch","python": "${workspaceFolder}/.venv/bin/python","cwd": "${workspaceFolder}","module": "uvicorn","justMyCode": true,"args": ["prepline_general.api.app:app","--host","0.0.0.0","--port","8888","--reload"],"jinja": true}]
    }
    
  4. 保存退出后即可在左侧的Run And Debug面板中点击绿色三角按钮启动。

2. Docker部署

1. 下载镜像

官方提供的docker镜像下载地址已经失效,目前找到了第三方基于源码的镜像编译,测试过能启动,能访问,但是其它具体的接口没有细测过:

$ docker pull robwilkes/unstructured-api:0.0.82 

2. 启动容器

$ docker run -p 8888:8000 -d --rm --name unstructured-api robwilkes/unstructured-api:0.0.82

3. 结束

相关接口请查看官方介绍 -> https://github.com/Unstructured-IO/unstructured-api

4.遇到问题(在更新…)

Q1:在Apifox请求接口时出现了"There was an error parsing the body",特别是上传附件时便会报该错误。
A1:pydantic的版本有问题,可参考本示例中fastapi版本和pydantic版本:
fastapi:0.113.0
pydantic:2.11.7

Q2:启动过程若是报错:punkt_tab找不到,提示你执行nltk下载依旧失败
A2:访问nltk_data官网拷贝下其packages目录代码放在跟preline_general统计目录下:

在这里插入图片描述

http://www.dtcms.com/a/288347.html

相关文章:

  • ADC选型设计
  • SpringBoot项目打包加部署方案
  • Datawhale 7月学习
  • SCSAI工业智能体的核心特征
  • Xss-labs 1-8以及利用python自动sq8注入
  • linux cpu频率和AVS调压等级
  • 板子 5.29--7.19
  • 函数式编程和命令式编程
  • Python爬虫实战:研究psd-tools库相关技术
  • UI 程序退出卡顿问题分析:从真实案例深入理解退出清理路径负载问题
  • 【工具变量】地级市城市包容性绿色增长数据(2011-2023年)
  • vue3使用KeepAlive组件及一些注意事项
  • [spring6: Advice Advisor Advised]-快速理解
  • 基于深度学习的火灾智能检测系统设计与实现
  • 零基础学习性能测试第二章-linux服务器监控:网络iftop
  • HTTP与HTTPS技术细节及TLS密钥交换与证书校验全流程
  • 马走日题解
  • LeetCode Hot100【7. 整数反转】
  • MyBatis动态SQL全解析:五大核心标签实战指南
  • [每日随题11] 贪心 - 数学 - 区间DP
  • 路由器内部电子元器件详解
  • C++数据结构————二叉树
  • 模电基础-电压和电阻
  • RISC采用的3种流水技术的功能和区别分析
  • 【官方】OneCode 3.0 核心技术白皮书:注解驱动、可视编码与 AI 融合
  • 相角补偿全通滤波器设计:相位均衡(0~350Hz,15°超前)
  • 关于如何同步开发板的时间和现在一样:
  • MyBatis分页神器PageHelper深度解析
  • 【深度学习-Day 38】破解深度网络退化之谜:残差网络(ResNet)核心原理与实战
  • openmv小车追小球