Skip to content
This repository was archived by the owner on May 18, 2026. It is now read-only.
fanfyhPublic archive

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

SegmentBio - 中国官员履历结构化处理系统

Python License Code Style

项目简介

SegmentBio 是一个基于大语言模型的中国官员履历结构化处理系统。该项目旨在将非结构化的履历文本转换为标准化的结构化数据,为政治学、行政学等领域的实证研究提供高质量的基础数据。

核心功能

  • 🤖 多LLM支持: 支持DeepSeek、OpenAI GPT、Google Gemini等多种大语言模型
  • 📊 13字段提取: 精确提取时间、地区、职务、级别等13个关键字段
  • 🏛️ 12类组织分类: 基于中国行政体系的标准化组织类型分类
  • ⚡ 批处理模式: 支持大规模数据的断点续传处理
  • 📈 质量保证: 完整的错误处理、日志记录和质量统计

项目结构

SegmentBio/
├── README.md                    # 项目说明
├── CLAUDE.md                   # Claude Code 指导文件
├── requirements.txt            # Python依赖
├── setup.py                    # 项目安装配置
├── .env.example               # 环境变量示例
├── Makefile                   # 常用命令快捷方式
│
├── config/                    # 配置文件
│   ├── settings.py           # 项目设置
│   └── logging.yaml          # 日志配置
│
├── src/segmentbio/           # 源代码
│   ├── core/                 # 核心功能
│   │   ├── api_client.py     # API客户端
│   │   └── processor.py      # 数据处理
│   ├── utils/                # 工具函数
│   └── models/               # 数据模型
│
├── scripts/                  # 执行脚本
│   ├── 01_import_data.py     # 数据导入
│   └── 02_process_biography.py # 履历处理
│
├── data/                     # 数据目录
│   ├── raw/                  # 原始数据
│   ├── processed/            # 处理数据
│   └── external/             # 外部数据
│
├── models/prompts/           # 提示词模板
├── notebooks/               # Jupyter笔记本
├── outputs/                 # 输出结果
└── logs/                    # 日志文件

快速开始

1. 环境配置

# 克隆项目
git clone <your-repo-url>
cd SegmentBio

# 创建虚拟环境
python -m venv venv
source venv/bin/activate  # Linux/Mac
# 或 venv\Scripts\activate  # Windows

# 安装依赖
make install
# 或 pip install -r requirements.txt

2. 配置API密钥

# 复制环境变量模板
cp .env.example .env

# 编辑.env文件,添加你的API密钥
# DEEPSEEK_API_KEY=sk-your-deepseek-api-key-here
# OPENAI_API_KEY=sk-your-openai-api-key-here
# GEMINI_API_KEY=your-gemini-api-key-here

3. 运行处理流程

# 方法1: 使用Makefile (推荐)
make pipeline              # 运行完整流水线
make process-sample        # 处理样本数据 (100条)

# 方法2: 直接运行脚本
python scripts/01_import_data.py           # 导入原始数据
python scripts/02_process_biography.py     # 处理履历数据

使用示例

基础使用

from segmentbio.core.api_client import LLMAPIClient
from segmentbio.core.processor import BiographyProcessor

# 初始化API客户端
client = LLMAPIClient("deepseek")

# 创建处理器
processor = BiographyProcessor(client, "models/prompts/committee_prompt.txt")

# 处理数据
result_df, error_df = processor.process_dataframe(df)

命令行使用

# 使用DeepSeek处理1000条数据
python scripts/02_process_biography.py --api deepseek --sample-size 1000

# 批处理模式
python scripts/02_process_biography.py --batch --sample-size 5000

# 使用不同的API
python scripts/02_process_biography.py --api gemini --model gemini-pro

数据模式

输入数据格式

字段名 类型 说明
person_id str 人员唯一标识
records str 原始履历文本

输出数据格式 (13字段)

字段名 说明 示例
时间 原始时间表达式 "2019年1月-2021年1月"
地区 工作地区 "山东省青岛市"
职务 完整职务信息 "市委书记"
start_time 开始时间(YYYY-MM) "2019-01"
end_time 结束时间(YYYY-MM) "2021-01"
province 省级行政区 "山东省"
city 地级市 "青岛市"
county 县级单位 "-"
organization_type 组织类型(12类) "党委"
organization 具体组织 "党委常委会"
position 具体职务 "市委书记"
rank 行政级别 "副省/部级"
committee 党委常委信息 "省委常委"

开发指南

项目管理命令

make help              # 查看所有可用命令
make setup            # 初始化项目环境
make test             # 运行测试
make lint             # 代码风格检查
make clean            # 清理临时文件
make status           # 查看项目状态

API支持

  • DeepSeek: deepseek-chat (推荐)
  • OpenAI: gpt-3.5-turbo, gpt-4
  • Google Gemini: gemini-pro

特性

  • ✅ 多API支持和密钥轮询
  • ✅ 批处理和断点续传
  • ✅ 完整的错误处理和日志记录
  • ✅ 标准化的13字段数据输出
  • ✅ 基于中国行政体系的12类组织分类

贡献指南

  1. Fork项目
  2. 创建特性分支: git checkout -b feature/amazing-feature
  3. 提交更改: git commit -m 'feat: add amazing feature'
  4. 推送分支: git push origin feature/amazing-feature
  5. 创建Pull Request

许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

联系方式

如有问题请通过以下方式联系:

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages