Skip to content

放置于laravel框架中的jieba分词服务,通过laravels利用swoole的常驻内存免去每次请求中词典的加载,使速度得到极大提升

License

Notifications You must be signed in to change notification settings

WYQilin/laravel-jieba

Repository files navigation

Just a simple server!

结巴分词是一款优秀的中文分词库,之前在python应用中有使用,目前在php业务中需要接入,但对于php而言,fpm的形式导致每次请求的词典加载耗时过长,因此提供基于laravels(swoole)的分词服务,方便快速部署简单场景下的分词服务。

Build Status License

要求

依赖 说明
PHP >= 7.2.0
Swoole扩展 >= 4.x 推荐4.2.3+

功能示例(demo)

请自行修改get请求的content参数内容

  1. 中文分词

    http://analyse.yaqi.wang/api/cut?content=我爱北京天安门

  2. 关键词提取

    http://analyse.yaqi.wang/api/analyse?content=我爱北京天安门

  3. 分词位置标注

    http://analyse.yaqi.wang/api/tokenize?content=我爱北京天安门

  4. 分词词性标注

    http://analyse.yaqi.wang/api/posseg?content=我爱北京天安门

安装

请先确保 swoolecomposer 已安装。如未安装可根据链接中的官方文档进行安装

  1. 克隆代码

    git clone https://github.com/wyq2214368/laravel-jieba.git
    
  2. composer安装依赖

    composer install
    

    以下的步骤是laravel及laravels的相关配置,您可以选择使用 php artisan install 指令一键完成。或根据相应文档完成设置

  3. 创建.env文件

    cp .env.example .env
    
  4. 生成laravel的key

    php artisan key:generate
    
  5. 文件夹权限设置

    chmod -R 777 storage/
    chmod -R 777 bootstrap/cache/
    

    可视情况合理分配需要的权限

    或分配php-fpm进程用户为所有者

    choown -R apache:apache ./
  6. 启动服务

    php artisan serve
    

    如果您不想启动laravel server而是使用laravels服务,可以通过 php artisan install 指令启动laravels服务,或通过laravels文档自行启动

  7. 访问并测试服务

    服务启动后可通过 http://127.0.0.1:8000/api/cut?content=吃葡萄不吐葡萄皮

    如您启动的laravels服务,则需要使用laravels配置的端口(默认是 5200)

  8. 如果需要切换词典,可以修改.env中的DICT_TYPE,jieba提供了big、normal、small三种规格,参考其他詞典

License

MIT

鸣谢

欢迎star~

About

放置于laravel框架中的jieba分词服务,通过laravels利用swoole的常驻内存免去每次请求中词典的加载,使速度得到极大提升

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published