llama.cpp 安装和配置指南

llama.cpp 安装和配置指南

【免费下载链接】llama.cppPort of Facebook's LLaMA model in C/C++ 项目地址: https://gitcode.com/GitHub_Trending/ll/llama.cpp

1. 项目基础介绍和主要编程语言

项目介绍

llama.cpp 是一个开源的 C/C++ 库,旨在通过最小的设置和最先进的性能,在各种硬件上实现大型语言模型(LLM)的推理。该项目支持多种硬件加速后端,包括 Apple Silicon、x86 架构的 AVX、AVX2 和 AVX512,以及 NVIDIA 和 AMD 的 GPU。

主要编程语言

该项目主要使用 C 和 C++ 语言编写。

2. 项目使用的关键技术和框架

关键技术

  • ARM NEON:针对 Apple Silicon 的优化。
  • Accelerate 和 Metal 框架:用于 Apple 设备的加速。
  • AVX、AVX2 和 AVX512:用于 x86 架构的优化。
  • CUDA 和 HIP:用于 NVIDIA 和 AMD GPU 的加速。
  • Vulkan 和 SYCL:支持 GPU 和 CPU 的混合推理。

框架

  • CMake:用于项目的构建和配置。
  • GGML:用于模型量化和推理的核心库。

3. 项目安装和配置的准备工作和详细安装步骤

准备工作

  1. 安装 Git:用于克隆项目仓库。
  2. 安装 CMake:用于构建项目。
  3. 安装编译器:如 GCC 或 Clang,用于编译 C/C++ 代码。
  4. 安装 Python(可选):如果需要使用 Python 绑定。

详细安装步骤

步骤 1:克隆项目仓库

首先,使用 Git 克隆 llama.cpp 仓库到本地:

git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp 
步骤 2:配置和构建项目

使用 CMake 配置和构建项目:

mkdir build cd build cmake .. make 
步骤 3:运行示例

构建完成后,可以运行示例程序来验证安装是否成功:

./llama-cli -m models/llama-13b-v2/ggml-model-q4_0.gguf -p "Building a website can be done in 10 simple steps:\nStep 1:" -n 400 -e I 
步骤 4:配置 Python 绑定(可选)

如果需要使用 Python 绑定,可以按照以下步骤进行配置:

  1. 安装 llama-cpp-python
pip install llama-cpp-python 
  1. 配置环境变量(可选):
export CMAKE_ARGS="-DGGML_BLAS=ON -DGGML_BLAS_VENDOR=OpenBLAS" pip install llama-cpp-python 

总结

通过以上步骤,您已经成功安装并配置了 llama.cpp 项目。您现在可以在本地运行大型语言模型的推理,并根据需要进行进一步的优化和扩展。

【免费下载链接】llama.cppPort of Facebook's LLaMA model in C/C++ 项目地址: https://gitcode.com/GitHub_Trending/ll/llama.cpp

Read more

Flutter for OpenHarmony: Flutter 三方库 sanitize_html 彻底杜绝 XSS 注入风险(鸿蒙 Web 内容安全净化)

Flutter for OpenHarmony: Flutter 三方库 sanitize_html 彻底杜绝 XSS 注入风险(鸿蒙 Web 内容安全净化)

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net 前言 在开发 OpenHarmony 应用时,如果我们需要在 UI 中渲染来自后端的 HTML 内容(例如文章正文、用户评论),或者使用 flutter_html 等库,一个致命的安全风险就是 XSS (跨站脚本攻击)。恶意代码可能会通过 <script> 标签或 onerror 属性在你的 App 内执行非法逻辑。 sanitize_html 是一个轻量级且极高效的 HTML 净化库。它采用白名单机制,能瞬间过滤掉所有不安全的标签和属性,确保你在鸿蒙 App 内渲染的每一行 Web 内容都是绝对安全的。 一、核心防御机制解析 sanitize_html 遵循“默认拒绝”

Lada本地一键启动包:AI视频马赛克去除神器

Lada本地一键启动包:AI视频马赛克去除神器   咱就直说吧,网上那些特殊视频,最让人抓狂的就是关键地方总是打着马赛克。想看又看不清,那种感觉真的太折磨人了。我之前一直在找能去马赛克的工具,试了好多都不太行,直到我发现了这个神器——Lada。   这玩意儿到底能干啥? 简单来说呢,Lada就是一个基于AI的视频马赛克去除工具,专门用来恢复视频里那些被打了马赛克或者像素化的部分。不管是日本那种打码的,还是其他被处理过的视频,它都能帮你处理。 而且最关键的是,它是开源的,完全在你自己电脑上本地运行,没有任何限制。你懂的,这种私密视频肯定不能上传到什么在线平台处理,隐私问题太重要了。   我之前也试过一些在线工具,但这种视频谁敢随便上传啊?万一被保存下来或者泄露了,想想就后怕。用Lada就完全不同了,所有处理都在本地完成,你的小秘密只有你自己知道。处理完之后还能自动把音频合成回去,效果丝滑得很! 怎么用?超级简单 我实测了一下,真的是一键启动的那种简单。你看这个界面:   下载解压之后,双击启动命令就能跑起来了,完全不用折腾什么配置环境。导入你想处理

放弃无效编码!AI+SDD 重构复杂业务研发范式,新手也能落地

放弃无效编码!AI+SDD 重构复杂业务研发范式,新手也能落地

在当前复杂业务系统研发中,我们常陷入诸多困境:需求反复变更导致开发返工,AI辅助编程易出现幻觉生成无效代码,多人协作时重复开发浪费精力,上线后频繁出现回归bug,文档与代码脱节成为“无效资产”。这些问题的核心,是缺乏一套统一可落地的研发范式,让需求、设计、开发、测试全流程形成闭环,而规格驱动开发(SDD,Spec-Driven Development),正是解决这一痛点的关键。 很多开发者对SDD的认知停留在“先写文档再写代码”的表面,甚至觉得它是“额外负担”,尤其在工期紧张的复杂项目中,更倾向于跳过规格设计直接编码。但事实上,SDD并非传统意义上的“文档绑架”,而是结合AI时代研发特点,形成的一套高效可落地的工程化方法。 本文结合OpenSpec这一主流SDD工具,从实操层面拆解SDD在复杂业务系统中的落地全流程,解答工具使用、流程设计、痛点解决等关键问题,帮助每一位开发者真正用好SDD,提升复杂系统研发效率与质量。 核心概念明确 SDD中的Spec(Specification,规格),本质是对业务需求、技术设计、实现细节的标准化描述,是整个研发流程的“唯一真理来源”。与传统