AI学习路线(持续更新)

整理一下自己的AI学习路线,方便后续回溯,也可以给别人一个学习参考

前置准备

  • 有一个好的生产工具,效率翻倍,这里推荐Mac+配套显示器
  • 使用Chrome,国内用户自查使用方式
  • 使用Github,了解前沿的技术,同时很多开源的模型都可以在这里找到

阅读全文

RAG学习(一)

RAG,英文全称“Retrieval-Augmented Generation”,是一种将信息检索和生成模型相结合的人工智能技术。在信息生成的过程中,利用外部的知识库和文档检索相关的信息,从而提升结果的准确率和可靠性。

RAG的核心分为两步:

  • 检索:从知识库(数据库,文档或者网页)上找出对应的数据片段,通常通过一个检索模型实现。
  • 生成:将问题和检索到的内容结合起来,生成答案。通过了解大模型训练的基础原理可以知道,模型的训练一般都是在有限的数据下完成的,为了生成具有事实性质的内容等,通常还需要通过额外的干预方式进行二次处理,确保输出更加准确和具体的信息。

阅读全文

针对AI+code的一些个人思考

最近一个月,使用了市面上的一些AI相关的软件,比如字节的MarsCode或者是Github的copilot。个人感觉确实提升了工作效率,可以帮助解决一些重复性的开发工作,但是这个过程中也发现了一些问题:

  • AI生成的代码质量参差不齐,有的甚至是错误的,需要自己进行二次确认;
  • AI的使用场景有限,只能解决一些简单的问题,不能解决相对复杂的问题;
  • AI生成的代码和人的意图可能存在差异,需要通过prompt不断地微调;

当然,这些问题我相信开发者也知道,而且当前的问题应该远远不止于此。不过,随着技术的不断进步,我相信这些问题会慢慢得到优化。
以上是我近期使用的吐槽,不是本次行文的重点,这篇文章,想思考的是AI+编程的未来是怎么样的呢?

阅读全文

MIT 6.824 lab2

实验背景

  • 在大部分分布式场景中,往往采用的是多个不同的节点共同运作一个系统,大部分采用的是一主多从的方案,即一个主节点(Leader),多个从节点(Follow)节点。主节点承担着响应客户端请求的职责,主节点需要将数据备份给从节点,防止数据丢失等。然而,集群的运作往往意味着可能出现的不一致问题,本次我们研究讨论的raft算法就是为了解决分布式场景下的一致性问题。
  • raft算法是一种一致性算法,相对于比较经典的分布式算法Paxos算法,raft算法比较简单,相对更加容易理解,同时实现成本比Raft算法更低。
  • 实验详细说明参照:https://pdos.csail.mit.edu/6.824/labs/lab-raft.html
  • 实现代码: https://github.com/Peterliang233/MIT-6.824/tree/main

阅读全文