Skip to main content

黑洞资源笔记

  1. 本系列将介绍并实现一门简单的编程语言——Kaleidoscope,教程的每一章都会逐步对其编译器进行完善。同时会介绍编译原理相关的理论和知识,以及 LLVM 相关概念。每一章都会花费很大的篇幅对相关的代码实现进行解释。因此,强烈建议每一位读者亲自对代码进行实践。

    教程总共分为十章,每一章包含不同的主题,各章之间属于循序渐进的关系,各章相关的代码,也是通过增量修改实现的。如下所示,为各章的主题与内容简介。

    第1章 - Kaleidoscope 与词法分析器。介绍了目标以及实现的基本功能。词法分析器是为一门编程语言构建解析器的基础,我们使用 C++ 实现一个简单的词法分析器。
    第2章 - AST 与解析器。介绍了解析器相关技术,以及抽象语法树的构造。关于解析技术,本教程使用的是递归下降分析法和算符优先级分析法。
    第3章 - LLVM IR 代码生成。介绍了如何基于 AST 生成 LLVM IR,通过一种简单的方法将 LLVM 引入到编译器实现中。
    第4章 - JIT 与优化器支持。基于 LLVM 为 Kaleidoscope 实现 JIT 编译功能,同时加入对于优化器的支持。
    第 5 章 - 语言扩展:控制流。对 Kaleidoscope 进行语言扩展,实现控制流能力(if 语句和 for 语句)。同时,简单介绍了 SSA 的构造。
    第6章 - 语言扩展:自定义运算符。对 Kaleidoscope 进行语言扩展,实现自定义运算符能力,允许用户自定义一元运算符和二元运算符(支持运算符优先级)。
    第7章 - 语言扩展:可变变量。对 Kaleidoscope 进行语言扩展,实现局部变量和赋值操作符。同时,介绍了一种隐式的方法让 LLVM 自动构造 SSA。
    第8章 - 目标文件编译。介绍了如何基于 LLVM IR 编译生成目标文件。
    第9章 - 调试信息。支持调试器,添加调试信息,允许在 Kaleidoscope 函数中设置断点,打印参数变量和调用函数。
    第10章 - 总结。主要讨论语言扩展的进阶内容,比如指针、垃圾回收、异常、调试等。
  2. aidea: 一款集成了主流大语言模型以及绘图模型的 APP, 采用 Flutter 开发,代码完全开源,支持以下功能:

    支持 GPT-3.5/4 问答聊天
    支持国产模型:通义千问,文心一言
    支持文生图、图生图、超分辨率、黑白图片上色等功能,集成 Stable Diffusion 模型,支持 SDXL 1.0

    除IOS 国区目前不可用,其他所有区域都可以下载。

    开源代码:客户端 | 服务端 (即将开放)
    安装地址:Android/IOS APP | Mac桌面端 | Web端
  3. 微软 AI 背包专利曝光,可自动比价、陪用户聊天

    美国商标和专利局在近日的一份公式清单中,曝光了微软在今年 5 月提交的一款 AI 背包专利。这款背包配备了完整的电脑系统以及摄像头、麦克风、扬声器等外设,可通过语音实时与用户完成交互,为用户在各类场景中给到建议与帮助。

    根据微软的介绍,佩戴这款 AI 背包滑雪时,可自动扫描周边环境,提醒用户是否越界;站在音乐节海报前,可以提醒用户是否创建日历提醒项并购买门票;在购物时,背包还能够自动检测商品过去 1-2 周的价格,并与其他商超的价格进行比较。
  4. 官方越狱 iPhone 现已开放申请 | link

    Apple 安全工程与架构 (SEAR) 团队发布公告,宣布开放 2024 年度 iPhone 安全研究设备计划(SRDP)的资格申请,通过申请的参与者将获得一台名为 SRD 的官方改装 iPhone。

    这台设备运行经过定制的特殊固件,安全研究人员可在其不受限的软件环境中运行任何工具,甚至可以加载经过修改的操作系统内核。

    借助设备这台设备,安全研究人员可以更快、更方便的发现 iOS 乃至 iPhone 硬件上的漏洞,所有提交的漏洞都有机会获得来自 Apple 的安全赏金。
  5. 116.21GB,《星空》开启 Steam 平台预载

    游戏《星空》今日在 Steam 平台为预购玩家开启了游戏预载,不包含首日补丁的预载体积为 86.4GB,解压后需要硬盘有至少 116.21GB 的剩余空间。

    游戏的标准版将在  9 月 6 日 上午 8 点解锁,购买高级版与典藏版的玩家则能提前 5 天,在 9 月 1 日抢先开玩。
  6. 一个做的比较专业的 AI Chatbot,MindOS,mindos.com,平台提供了一系列 AI 伴侣可以直接对话,具备较为强大的 AI 副驾驶定制化能力,包括 APIs、Workflows、Knowledge 和 Memory。

    APIs 是一系列集成的三方接口,包括 Google 内容搜索、天气查询、Youtube 视频查询等,甚至还包括 LLM as a Service 的服务接入,也支持自定义接入。

    Workflows 类似一个低代码编辑器,允许定义各种 Nodes 节点,例如抓取、分析和处理数据等,包括对数据的重新排列组合,还支持编程方式处理数据,每个 Node 都是一个 Prompt 驱动的任务执行器。

    Knowledge 解决了幻觉问题,而 Memory 可以用来缓存和读取数据,它有点类似一个 Prompt 驱动的 Database。

    docs | home
    MindOS_Create_autonomous_AI_agents_for_your_professional_tasks.mkv
    7 MB