2作者: RajGuruYadav7 个月前原帖
— 作者:Raj Guru Yadav 像许多开发者一样,我对大型语言模型(LLMs)充满了好奇。但当我问到:“我能在离线状态下快速运行一个类似ChatGPT的助手,而不需要16GB以上的内存吗?”这个挑战让我无法抗拒。 <p>目标 构建一个完全离线、轻量级的AI助手,具备以下特点: <p>下载大小小于50MB <p>无需互联网 <p>快速响应(在1秒以内) <p>零遥测 <p>完全本地的嵌入和推理 <p>结果:一个40MB的离线ChatGPT克隆,可以在浏览器中或USB闪存驱动器上运行。 <p>40MB内部包含什么? 这是我如何将智能对话压缩到如此小的包裹中的: <p>模型:通过llama.cpp量化的Mistral 7B Q4_K_M <p>推理引擎:llama.cpp(编译为WebAssembly或本地C++) <p>用户界面:轻量级的React/Tailwind界面 <p>存储:用于本地聊天历史的IndexedDB <p>嵌入:本地MiniLM用于智能PDF或笔记搜索 <p>附加功能:Whisper.cpp用于本地语音输入;Coqui TTS用于语音输出 <p>我为什么要构建它 我(Raj Guru Yadav),一名16岁的开发者和学生,想要: <p>深入了解大型语言模型的实际工作原理 <p>构建一个尊重隐私且本地化的工具 <p>证明AI不需要云端也能强大 <p>为离线用户(如许多印度学生)提供真正的AI支持 <p>挑战 在低内存设备上的内存瓶颈 <p>对小型模型进行提示调优以获得更智能的回复 <p>WebAssembly优化以提高浏览器性能 <p>与小型TTS/ASR模型的离线语音和文本集成 <p>性能(在4GB的笔记本电脑上) 能够合理回答事实、编码和数学问题 <p>离线读取和总结PDF文件 <p>本地记忆对话内容 <p>(可选)大声朗读答案 <p>最后的想法 AI不应该被锁在付费墙或云端后面。 我的目标是将智能助手带到每个人的手中—— 完全离线,完全免费,完全属于你。 <p>由 Raj Guru Yadav 制作 <p>开发者 | 700多个项目的构建者 | 热衷于开放AI为所有人服务
2作者: dizzierhys7 个月前原帖
我建立了我的第一个网络应用程序。<p>作为一个摄影爱好者,将我的照片添加到框架模型或空白框架中以供我的电商网站使用的过程非常缓慢。<p>直到现在..<p>只需上传一张图片,即可立即在各种场景和框架中预览您的图像。无需使用 Photoshop!<p>欢迎反馈<p>快来看看吧 &gt; <a href="https:&#x2F;&#x2F;framecanvas.app&#x2F;" rel="nofollow">https:&#x2F;&#x2F;framecanvas.app&#x2F;</a>
1作者: 8mobile7 个月前原帖
嗨,HN, iPantry 是我开发的一款简单应用,旨在解决我家中反复出现的问题:忘记我们在食品储藏室或冰箱里已经有什么,买到重复的食物,以及让食物过期。 在忙碌的日程和共享的家庭环境中,尤其是在家庭成员分担购物时,容易失去对现有食材的掌握。我们常常会在橱柜的角落里发现多余的牛奶盒或过期的意大利面。 我找不到一款既易于使用又能与原生 iOS 工具共享的应用。大多数应用要么过于复杂,要么将功能锁定在账户系统或外部同步之下。 于是我制作了 iPantry: - 跟踪产品的数量和过期日期 - 获取低库存和过期提醒 - 通过 iCloud 和 Apple Reminders 导出清单或共享物品 - 所有数据保留在您的 iCloud 账户中,跨设备同步 - 无需注册或第三方服务 这是一款旨在提供清晰和快速体验的小工具。我很想听听您的想法、建议或批评。 感谢您抽出时间查看。
1作者: jkool7027 个月前原帖
timep 是一个用于 Bash 代码的时间分析器,它可以准确地提供任何 Bash 脚本或函数的每个命令执行时间的详细信息。与其他分析器不同,timep 还会恢复并分层记录子 Shell 和函数嵌套的元数据,从而能够重建被分析的 Bash 代码的完整调用栈树。如果使用 `--flame` 标志调用 timep,它将自动生成一个 flamegraph .svg 图像,其中每个块表示在特定命令(顶层)或其父子 Shell/函数(其他所有层级)上花费的实际时间。 使用 timep 非常简单 - 只需加载 timep.bash 文件,然后在想要分析的内容前加上 timep。您无需更改被分析的代码 - timep 会为您处理所有事情。示例用法: ``` . ./timep.bash timep someFunc timep -flame someScript <inputFile ``` timep 将为您生成两个分析结果:一个显示每个单独命令(包含完整的子 Shell/函数嵌套链),另一个将重复的循环命令合并为计数 + 总运行时间行,并附带最少的“额外”元数据。 有关可用标志和输出分析细节的更多信息,请参见 GitHub README。 timep 的工作原理是将所有计时仪器逻辑压缩到一个 DEBUG trap 中,大致执行以下操作: 1. 记录上一个命令的结束时间戳 2. 将当前状态与在变量中保存的上一个 DEBUG trap 的状态进行比较,以确定正在发生何种命令。例如,如果 BASH_SUBSHELL 增加,则我们知道刚刚进入了一个子 Shell 或后台分叉。 3. 一旦知道正在发生何种类型的命令,为上一个命令生成日志行(现在我们有了它的结束时间) 4. 在各种变量中保存当前状态(以便在下一个 DEBUG trap 使用) 5. 记录下一个命令的开始时间 然后,在被分析的代码执行完毕后,timep 会对日志进行后处理,以生成最终的分析结果。