目前的进展:从原型到产品


上一篇讲到了我们用n8n和NextTalk搭建了一个四智能体的语言学习助手,效果相当不错。但我们很快就意识到:这个东西如果只是在我们自己的电脑上跑跑,那它永远只是一个“好玩的小项目”。

我们想把真正它开放给用户使用。

问题来了:n8n加NextTalk的架构,做个原型绰绰有余,但要面向真实用户,就显得力不从心了。

我们讨论了很多种方案。

方案一:前端 + n8n后端。 用React或者Astro做一个前端界面,然后把n8n当作后端API来调用。这样看起来最快,但我们心里清楚,n8n作为工作流引擎很优秀,但如果用户量上来了,它的性能和扩展性会成为瓶颈。

方案二:用Java重写。 在中国,Java是绝对的主流。企业级应用、大型系统,Java几乎无处不在。生态成熟,开发者也多如牛毛。

方案三:用Python。 说到AI领域,Python几乎是“官方语言”。各种AI框架和工具都以Python为主。

看起来Java和Python都是“正确”的选择,对吧?

然后,亨利做了一件所有人都觉得不可思议的事:他选了Ruby。

没错,就是Ruby。在2026年的中国,选Ruby做新项目,大概跟在一群吃火锅的人中间点一份寿司差不多。

亨利的理由倒也简单:他喜欢Ruby,觉得Ruby on Rails是一个极其优雅的框架。用他的话来说,“写Ruby代码是一种享受”。

说实话,作为一个刚学编程三年的人,当我听到要学Ruby on Rails的时候,我的内心是崩溃的。我好不容易把JavaScript和React搞明白了,现在又要学一门新语言和新框架?

但亨利坚持,我也就硬着头皮学了。

结果呢?

我爱上了Ruby on Rails。

真的。一旦你理解了它的设计哲学,“约定优于配置”、“不要重复自己”,你会发现这个框架简直像艺术品一样精致。写代码的时候,经常会有“啊,原来可以这么优雅”的感叹。

而且,我们发现了一个特别好用的Ruby库:Ruby LLM。这个库专门用来和各种AI服务提供商对接,构建AI Agent特别方便。简直像是为 Hana Tutor 量身定做的。

于是,我们开始了真正的产品开发。

用Ruby on Rails搭建后端,用Astro做前端(对,就是我之前学的那个Astro!),把之前在n8n里验证过的四智能体架构迁移过来。

进展比预期的顺利。没过多久,我们就有了一个可以正常对话的聊天原型。

但还有一个小插曲。

我们最早的提示词(prompt)是中文写的,专门为中文母语者学习西班牙语设计。里面包含了很多西班牙语的语法知识点和词汇内容。

但好几个AI模型都给了我们同一个建议:提示词最好用英文写。

为什么呢?因为目前主流的AI模型在英文下的表现最好,用英文写提示词可以让AI更准确地理解和执行指令。

于是我们又花了几天时间,把所有的提示词从中文翻译成了英文。这个过程也不简单,很多西班牙语语法概念用中文表达很自然,翻译成英文反而要绕个弯子。

翻译完之后,我们又进入了熟悉的“迭代循环”:测试、发现问题、修改、再测试。大概花了三四天的时间,修了一些bug,调了一些参数,打磨了一些细节。

这就是 Hana Tutor 目前的状态。

一个可以运行的产品原型,有着经过反复验证的AI教学逻辑,用Ruby on Rails和Astro搭建,虽然还不完美,但已经能看到清晰的轮廓了。

从最初的灵感到现在,这个过程比我想象中要长得多,也有趣得多。每一步都在学习,每一步都有新的发现。

下一篇,我来聊聊接下来的计划,因为要让 Hana Tutor 真正上线,还有不少路要走。