llama.cpp 编译安装@Ubuntu

在Kylin 和Ubuntu编译llama.cpp ,具体参考:llama模型c语言推理@FreeBSD-CSDN博客

现在代码并编译:

复制代码
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
mkdir build
cd build
cmake ..
cmake --build . --config Release

# 可选安装
make install 

# 或可选添加路径
export PATH=/home/skywalk/github/llama.cpp/build/bin:$PATH

下载llama 模型文件 1.3G 百度网盘 请输入提取码

转换模型

转换前先安装python库:

pip install sentencepiece

转换

复制代码
python convert.py ~/work/model/chinesellama/

执行:

复制代码
main -m ~/work/model/chinesellama/ggml-model-f16.gguf  -p "请写一个简单的python hello world例子"

效果,至少速度是很快的:

纯cpu的ubuntu:

你好,在不同领域中,相互之间的合作和交流。,实现共同目标。" 。 [end of text]

llama_print_timings: load time = 11357.71 ms

llama_print_timings: sample time = 1.53 ms / 21 runs ( 0.07 ms per token, 13734.47 tokens per second)

llama_print_timings: prompt eval time = 94.89 ms / 3 tokens ( 31.63 ms per token, 31.62 tokens per second)

llama_print_timings: eval time = 1215.98 ms / 20 runs ( 60.80 ms per token, 16.45 tokens per second)

llama_print_timings: total time = 1327.15 ms / 23 tokens

有些问题回答的还挺不错:

hello ,can you write a python hello world demo program? 程序。(注意:在编写程序时需要注意代码的可读性和可维护性)。

在编写代码时,需要注意代码的可读性、可维护性、可扩展性等方面。在编写代码时,可以使用以下方法来提高代码的可读性、可维护性、可扩展性:

  1. 使用有意义的变量名和函数名。

  2. 避免使用过长的代码和重复的代码,尽量使用简洁的表达。

  3. 使用注释来解释代码的逻辑和实现方式,以便于他人理解。

  4. 使用测试用例来验证代码的正确性,并及时修复错误。

  5. 使用适当的编程技巧和方法来提高代码的可读性和可维护性。

  6. 在代码中加入一定的代码规范和风格指南,以提高代码的可读性和可维护性。

  7. 使用版本控制工具来管理代码,如Git等。

代码的可读性和可维护性对于代码的长期维护和可扩展性非常重要。代码的可读性、可维护性和可扩展性决定了代码的可读性、可理解性、可维护性和可扩展性。因此,在编写代码时,我们应该尽可能地使代码易于阅读、易于维护和易于扩展。 [end of text]

llama_print_timings: load time = 224.27 ms

llama_print_timings: sample time = 20.63 ms / 283 runs ( 0.07 ms per token, 13715.23 tokens per second)

llama_print_timings: prompt eval time = 242.40 ms / 13 tokens ( 18.65 ms per token, 53.63 tokens per second)

llama_print_timings: eval time = 17749.69 ms / 282 runs ( 62.94 ms per token, 15.89 tokens per second)

llama_print_timings: total time = 18198.66 ms / 295 tokens

riscv Kylin下是因为sentencepiece这个库没装上,没法本地转换模型,就把amd64 ubuntu离得模型拷贝过来了,测试下来速度缺失慢,不过怎么自己聊起天来了? 还是挺有趣的:

太慢了,没有输出全:

hello ,can you write a python hello world demo program? ?。」

In order to generate a Python hello world, you need to follow these steps:

  1. Start by selecting the desired language.

  2. Construct the sentence by creating a sentence that includes all the original thoughts and ideas.

In order to generate a Python hello world, you need to follow these steps:

  1. Choose the language - Python, as the language it's most popular and widely used.

  2. Construct the sentence by creating a sentence that includes all the original thoughts and ideas.

Here's an example:

Original sentence:

"Hello, my name is John, and I'm a little boy. I want to go to school every day.

Constructing the sentence:

"Hello, my name is John, and I'm a little boy. I want to go to school every day.

  1. Create a sentence that

调试

报错

/usr/bin/cmake: /home/skywalk/py310/lib/libcurl.so.4: no version information available (required by /usr/bin/cmake)

/usr/bin/ld: cannot find /lib64/libpthread.so.0: No such file or directory

针对libcurl.so.4的报错,删掉一个就行了:

ls libcur*

libcurand.so libcurand.so.10.3.0.86 libcurl.so.4.8.0

libcurand.so.10 libcurl.so libcurl.so.4

rm libcurl.so.4

针对libpthread.so.0

sudo apt install libpthread*

相关推荐
casterQ几秒前
4. Agent Quality ——【Google 5-Day AI Agents】
人工智能·llm·agent·langgraph·adk
大聪明-PLUS几秒前
在 C++/CLI 中开发描述符类
linux·嵌入式·arm·smarc
组合缺一1 分钟前
Solon AI 开发学习11 - chat - 工具调用与定制(Tool Call)
人工智能·学习·ai·chatgpt·llm·solon·toolcall
weixin_436525073 分钟前
jar包启动使用logs替换nohup日志文件
java·linux·数据库
宠..4 分钟前
创建文本框控件
linux·运维·服务器·开发语言·qt
HuggingFace5 分钟前
用开源模型强化你的 OCR 工作流
人工智能
子綦5 分钟前
Andrej Karpathy 推荐的 AI 读书法:我是如何结合“沉浸式翻译”啃动英文顶会论文的?(附 Prompt 模板)
人工智能·经验分享·prompt·学习方法
陈天伟教授6 分钟前
机器学习策略(1)四大学派
人工智能·机器学习
Bigan(安)7 分钟前
【奶茶Beta专项】【LVGL9.4源码分析】03-显示框架-display
linux·c语言·mcu·arm·unix
Evan芙9 分钟前
Ubuntu 24.04 双网卡 bond0 绑定
ubuntu·postgresql·php