我问的是新实验室功能“Google Scribe”。这是链接:http://scribe.googlelabs.com/
我对后端和前端感兴趣,但主要是后端。我想用非常具体的数据集(来 self 自己的文档)构建类似的东西。我认为它的前端非常简单,我什至可以使用现有的自动完成插件来完成任务。
最佳答案
可能的实现建议:
后端构建和维护一个NxNxW
稀疏矩阵A
(例如作为Hash
实现),其中N
是你的词汇量,W
是你希望维护的最大上下文(以单词表示)(例如 W=4
可能没问题。 ) 检查一些示例数据以播种/初始化 A
这样 A[n1,n2,w]
计算单词 n2
出现的次数在单词 n1
之后的第 w
位置(尊重句子边界。)
前端:在用户输入时,要求后端使用 A
根据最后的 W< 评估(和排名)最可能的后继词
用户在当前句子中完全输入的单词;只显示那些以用户正在输入的内容开头的建议(即用户的“当前”(部分)单词。)
可选择让后端根据用户已完成输入的单词更新 M
,无论是在运行中(当用户返回执行更正时具有挑战性),还是在提交最终文本时(最简单),或通过一些定期的作业评估自上次作业运行以来提交的文本。
关于javascript - Google Scribe 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3664745/