【Rust日报】2021-02-13 nlprule,Rust 实现的 NLP 库

Rust牛年春晚节目录像

Rust牛年春晚,牛年初三,下午4点-12点。

https://www.bilibili.com/video/BV1HK4y1Q7EA

calc,一个命令行计算器

calc,一个Rust 实现的命令行计算器。

Github 链接,https://github.com/coriolinus/calc

表达式模式

$ calc "1/(2+(3*(4-5)))"
-1
$ calc "round(12345 / 543)"
23

Shell 模式

$ calc
[0]: 1 + 1
2
[1]: 3*(5/(3-4))
-15
[2]: 3*pi**2
29.608813203268074
[3]: @+1
30.608813203268074
[4]: @@@*2
-30
[5]: ln(-1)
NaN

nlprule,Rust 实现的 NLP 库

nlprule 使用 LanguageTool 中的资源为NLP实现了基于规则和查找的方法。

Github链接,https://github.com/bminixhofer/nlprule

from nlprule import Tokenizer, Rules

tokenizer = Tokenizer.load("en")
rules = Rules.load("en", tokenizer)

rules.correct("He wants that you send him an email.")
# returns: 'He wants you to send him an email.'

rules.correct("I can due his homework.")
# returns: 'I can do his homework.'

for s in rules.suggest("She was not been here since Monday."):
    print(s.start, s.end, s.replacements, s.source, s.message)
# prints:
# 4 16 ['was not', 'has not been'] WAS_BEEN.1 Did you mean was not or has not been?

for sentence in tokenizer.pipe("A brief example is shown."):
    for token in sentence:
        print(
            repr(token.text).ljust(10),
            repr(token.span).ljust(10),
            repr(token.tags).ljust(24),
            repr(token.lemmas).ljust(24),
            repr(token.chunks).ljust(24),
        )
# prints:
# ''         (0, 0)     ['SENT_START']           []                       []                      
# 'A'        (0, 1)     ['DT']                   ['A', 'a']               ['B-NP-singular']       
# 'brief'    (2, 7)     ['JJ']                   ['brief']                ['I-NP-singular']       
# 'example'  (8, 15)    ['NN:UN']                ['example']              ['E-NP-singular']       
# 'is'       (16, 18)   ['VBZ']                  ['be', 'is']             ['B-VP']                
# 'shown'    (19, 24)   ['VBN']                  ['show', 'shown']        ['I-VP']                
# '.'        (24, 25)   ['.', 'PCT', 'SENT_END'] ['.']                    ['O']

# and every call here takes less than 1ms! (on an i5 8600k)

Fly.io 升级Tokio到1.x

Fly.io 基于Rust 的 Tokio 和 Hyper 实现负载均衡,Tokio 升级到 v1.x,Fly.io 将其使用的 Tokio 从 v0.2 升级到 v1.x,并认为虽然是一个主要版本的升级,但升级过程并不难。

这篇博客文章记录了一些笔记,文章链接,https://fly.io/blog/the-tokio-1-x-upgrade/

PyO3 为 Rust 1.41 提供支持

在 Debian Buster,Alpine 3.12 和其他使用较旧 Rust 编译器版本 v1.41 的平台,PyO3 不能与Rust v1.41一起编译,目前已提供支持 Rust v1.41。

Github issue 链接,https://github.com/PyO3/pyo3/issues/1420


From 日报小组 洋芋

社区学习交流平台订阅:

  • Rustcc论坛: 支持rss

  • 微信公众号:Rust语言中文社区

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
锈伯特Rust 原生基于 Transformer 的模型实现。Hugging Face 的Transformers 的端口,使用tch-rs crate 和来自rust-tokenizers 的预处理。支持多线程标记化和 GPU 推理。该存储公开了模型基础架构、特定于任务的头(见下文)和随时可用的管道。本文档末尾提供了基准测试。目前实现了以下模型: 序列分类 代币分类 问答 文本生成 总结 翻译 蒙面LM 蒸馏器 :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: 移动BERT :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: 伯特 :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: 罗伯塔 :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: GPT :check_mark_button: GPT2 :check_mark_button: 捷运 :check_mark_button: :check_mark_button: :check_mark_button: 玛丽安 :check_mark_button: 伊莱克特拉 :check_mark_button: :check_mark_button: 艾伯特 :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: T5 :check_mark_button: :check_mark_button: :check_mark_button: XLNet :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: 改良剂 :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: 先知网 :check_mark_button: :check_mark_button: 长形 :check_mark_button: :check_mark_button: :check_mark_button: :check_mark_button: 即用型管道基于 Hugging Face 的管道,准备好使用的端到端 NLP 管道可作为此板条箱的一部分。目前提供以下功能:免责声明此存储的贡献者不对此处提议的预训练系统的第 3 方使用产生的任何生成负责。1. 问答从给定的问题和上下文中提取问题答案。在 SQuAD(斯坦
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值