对华裔名字进行分类

wangdalin e627f79d74 增加readme, 提取config, 整理client 10 mesiacov pred
tools e627f79d74 增加readme, 提取config, 整理client 10 mesiacov pred
.gitignore 00b3d25e99 'api的功能增加' 10 mesiacov pred
client.py e627f79d74 增加readme, 提取config, 整理client 10 mesiacov pred
config.py e627f79d74 增加readme, 提取config, 整理client 10 mesiacov pred
functions.py e627f79d74 增加readme, 提取config, 整理client 10 mesiacov pred
name_classify_api.py e627f79d74 增加readme, 提取config, 整理client 10 mesiacov pred
readme.md e627f79d74 增加readme, 提取config, 整理client 10 mesiacov pred
requirements.txt 00b3d25e99 'api的功能增加' 10 mesiacov pred

readme.md

以下是这两个接口的接口说明文档,使用Markdown格式编写:


API 接口文档

1. 文件上传接口

接口路径: /upload/

请求方法: POST

请求参数:

参数名称 类型 必须 描述
file UploadFile 要上传的文件
client_id string 客户端ID,用于创建用户目录

功能描述:

此接口用于上传文件,并将文件存储到服务器上的指定目录中。每个客户端都有自己的独立目录。上传文件后,系统会为文件和目录设置权限。

示例请求:

curl -X POST "http://{server_address}/upload/" \
  -F "file=@path/to/your/file.xlsx" \
  -F "client_id=12345"

响应参数:

  • 成功响应:
{
  "message": "文件 'your_file.xlsx' 上传成功",
  "client_id": "12345",
  "file_path": "./process/12345/your_file.xlsx"
}
  • 错误响应:
{
  "message": "发生错误: [错误信息]"
}

2. 数据分类接口

接口路径: /classify/

请求方法: POST

请求参数:

数据分类接口参数列表

参数名称 类型 必须 描述
client_id string 客户端ID,用于在服务器上区分不同用户的目录。
path string 需要分类的Excel文件的路径, 为上传文件的时候返回的列名
name_column string Excel文件中包含需要分类的姓名列的列名。
chunk_size int 默认100, 传入则修改 每次处理的数据块大小,用于分块处理数据。
one_key string 用于识别Excel文件中唯一标识符的列名。
api_key string 默认有openai的key, 传入则为用户的OpenAI API密钥,用于调用OpenAI的API进行数据分类。
proxy boolean 默认为False, 传入则修改,是否使用代理(如 true表示使用代理,false表示不使用代理)。

说明:

  • client_id: 该参数用于在服务器上创建或查找与客户端ID对应的目录,确保文件上传和处理的独立性。
  • path: 文件路径需要是服务器上实际文件的路径,确保该路径是正确的并且文件存在。
  • name_column: 确保该列名在Excel文件中存在,并且包含需要分类的姓名数据。
  • chunk_size: 分块大小决定了每次处理的数据量大小,较大的块大小可能会导致内存占用较高。
  • one_key: 唯一标识符列名用于确保数据的唯一性,避免重复处理。
  • api_key: OpenAI API的密钥,需确保密钥的正确性和权限。
  • proxy: 设置为 true时,通过代理进行API请求,通常用于网络受限的环境。

功能描述:

此接口用于对上传的Excel文件中的数据进行分类处理。接口会在服务器上检查并清理过期的文件和目录,然后根据用户提供的数据进行分类。分类完成后,返回结果文件的下载链接。

示例请求:

curl -X POST "http://{server_address}/classify/" \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": "12345",
    "path": "./process/12345/your_file.xlsx",
    "name_column": "姓名",
    "chunk_size": 100,
    "one_key": "ID",
    "api_key": "your_openai_api_key",
    "proxy": false
  }'

响应参数:

  • 成功响应:
{
  "message": "分类完成",
  "output_file": "http://{server_address}:8070/data/{client_id}/{output_file_name}"
}
  • 文件处理失败响应:
{
  "message": "文件没能处理成功"
}
  • 错误响应:
{
  "message": "处理出现错误: [错误信息]"
}