python简易程序跑NLPIR模型

  1. 程序和结果
python 复制代码
from ctypes import cdll, c_char_p, c_int
nlpir = cdll.LoadLibrary(r"C:\Users\Administrator\NLPIR\NLPIR SDK\NLPIR-ICTCLAS\lib\win64\NLPIR.dll")
nlpir.NLPIR_ParagraphProcess.restype = c_char_p  # ← 新增
nlpir.NLPIR_Init.restype = c_int  # 可选,保持默认也行
# 初始化 NLPIR
def init_nlpir():
    data_path = r"C:\Users\Administrator\NLPIR\NLPIR SDK\NLPIR-ICTCLAS\\"
    if nlpir.NLPIR_Init(c_char_p(data_path.encode('utf-8')), 1) == 0:
        print("NLPIR 初始化失败")
        return False
    return True
# NER 函数(需注意 NLPIR 的 NER 模式)
def ner(text):
    result = nlpir.NLPIR_ParagraphProcess(c_char_p(text.encode('utf-8')), c_int(2))  # 模式 2 为命名实体识别
    return result.decode('utf-8')
# 示例文本
text = "学校"
if init_nlpir():
    nlpir_result = ner(text)
    print("NLPIR NER 结果:\n", nlpir_result)
    nlpir.NLPIR_Exit()
  1. 下载NLPIR模型
    1. 下载git
      1. cmd使用winget tool工具下载git自动安装

    winget install --id Git.Git -e --source winget

      1. 通过git官网下载windows

git官网

    1. GitHub拉取NLPIR

    git clone https://github.com/NLPIR-team/NLPIR.git

如果无法进入GitHub

可以考虑下载加速器比如steam++(GitHub开源项目)由于无法进入github可以在以下网址下载

Watt Toolkit官网

开启加速后可以正常进入github

拉取后路径判断

复制代码
C:\Users\Administrator> git clone https://github.com/NLPIR-team/NLPIR.git

那么我拉取完后,NLPIR的位置:

C:\Users\Administrator\NLPIR

总结:克隆位置:"你执行clone的位置"+"仓库名"

  1. 调试程序
    1. 初始化失败

检查以下四项

      1. data路径是否存在或拼写错误

    import os
    print(os.path.exists(r"C:\Users\Administrator\NLPIR\NLPIR-Parser\Data")) # 必须为 True

      1. data文件是否有效授权文件且未过期

NLPIR.user 或 NLPIR.lic文件

      1. 动态库与python位数是否一致

    import platform
    print(platform.architecture()) # ('64bit', 'WindowsPE') 就要用 64 位 dll

    python -c "import platform, sys; print(platform.architecture(), sys.executable)"

如果是虚拟环境一定要先激活再执行确保是当前解释器环境

      1. NLPIR.dll缺少dll依赖(Windows常见)

Dependencies官网

如果都不是以上的问题还有一种:NLPIR 每个组件(ICTCLAS、Parser、TextSimilarity...)都有自己的 专属 Data 目录,你把 Parser 的 Data 给了 ICTCLAS 的 DLL(或反之),就会初始化失败。

结语:朝乾夕惕,功不唐捐,玉汝于成

相关推荐
wheeldown2 小时前
【Leetcode高效算法】用双指针策略打破有效三角形的个数
python·算法·leetcode
真的想不出名儿2 小时前
登录前验证码校验实现
java·前端·python
做运维的阿瑞3 小时前
Python原生数据结构深度解析:从入门到精通
开发语言·数据结构·后端·python·系统架构
孤客网络科技工作室3 小时前
Python - 100天从新手到大师:第二十六天Python操作Word和PowerPoint文件
python·word·powerpoint
zzywxc7873 小时前
AI赋能千行百业:金融、医疗、教育、制造业的落地实践与未来展望
java·人工智能·python·microsoft·金融·golang·prompt
星楠_0013 小时前
logits和softmax分布
人工智能·python·深度学习
easyboot4 小时前
python的print加入颜色显示
开发语言·python
aopstudio5 小时前
llms.txt:为大模型打造的“网站说明书”
人工智能·python·llm·开发者工具
java1234_小锋6 小时前
[免费]基于Python的Flask+Vue进销存仓库管理系统【论文+源码+SQL脚本】
后端·python·flask