SemIf教程:2k星语义条件判断,用本地模型替代if-else

📌 项目:TheoLeeCJ/SemIf | 星数:2k(Python,MIT)| 日期:2026-09-20 | 今日 GitHub Trending +0 | 来源:GitHub | Trending详情

📋 项目简介

SemIf(2k星,MIT,Python)让AI agent用语义if替代语法if。不再硬编码精确匹配条件,而是用本地开源模型理解自然语言条件(如「用户满意」「内容合规」)做分支判断。单张3090即可运行,确定性输出适合生产环境。可与 Supermemory上下文引擎 集成,构建更智能的agent决策链路。

📊 核心特性

特性说明
语义if替代语法if用自然语言条件替代精确匹配if-else
本地模型运行单张3090即可推理,无需云端API
确定性输出相同输入相同结果,适合生产环境
独立无依赖不绑定特定agent框架,可任意集成
多模型支持多种开源模型可选,按需权衡
AI agent分支引擎为agent条件分支提供语义判断能力

⚡ 安装与运行

# 安装
pip install semif

# 或源码安装
git clone https://github.com/TheoLeeCJ/SemIf.git
cd SemIf
pip install -e .

# 基础用法示例
from semif import semantic_if
if semantic_if("用户反馈偏正面"):
    # 执行分支...

💡 使用建议

📚 常见问题

SemIf和传统if-else有什么区别?

传统if判断精确匹配,SemIf用模型理解语义。比如if("用户满意")不需定义满意度阈值,模型直接判断。

运行速度快吗?

取决于模型大小,小模型(<1B)推理约50ms,大模型(7B)约500ms。本地推理无网络延迟。

确定性怎么保证?

固定temperature=0+固定seed+确定性采样,相同输入一定得到相同输出,适合生产环境。