首页
/ 10分钟掌握LLM命令行:从prompt到embedding的全功能指南

10分钟掌握LLM命令行:从prompt到embedding的全功能指南

2026-02-04 05:08:50作者:龚格成

你是否还在为复杂的大语言模型API调用而烦恼?是否想在终端里直接玩转GPT-4o、Gemini等模型?本文将带你一站式掌握LLM命令行工具的核心功能,从基础prompt到高级embedding,让AI能力触手可及。

读完本文后,你将能够:

  • 使用简洁命令调用各类AI模型
  • 构建交互式聊天会话
  • 处理多模态输入(图片、音频)
  • 管理模型参数与系统提示词
  • 实现代码生成与提取
  • 进行文本向量化与嵌入操作

核心命令速览

LLM工具的设计理念是简洁高效,最基础的prompt命令可以直接缩写为:

llm '生成10个芝士蛋糕的名字'

这等价于完整命令llm prompt '生成10个芝士蛋糕的名字'。通过docs/usage.md可以查看所有命令的详细说明。

命令结构解析

LLM命令行工具采用模块化设计,主要包含以下核心命令族:

graph TD
    A[llm] --> B[基础操作]
    A --> C[模型管理]
    A --> D[高级功能]
    B --> B1[prompt - 执行提示]
    B --> B2[chat - 交互式聊天]
    C --> C1[models - 模型列表]
    C --> C2[install - 安装插件]
    D --> D1[embed - 文本嵌入]
    D --> D2[tools - 工具调用]
    D --> D3[logs - 查看历史]

基础prompt操作

模型选择与切换

默认情况下,LLM使用gpt-4o-mini模型,你可以通过-m参数快速切换:

# 使用GPT-4o模型
llm '分析这段代码的时间复杂度' -m gpt-4o

# 使用模型别名(更简洁)
llm '解释量子计算基础' -m 4o

# 搜索模型
llm models -q gemini

通过设置环境变量可以临时更改默认模型:

export LLM_MODEL=gpt-4.1-mini
llm '这段文字的情感分析'  # 自动使用gpt-4.1-mini

输入方式多样化

LLM支持多种输入方式,满足不同场景需求:

# 直接输入prompt
llm '生成Python函数计算斐波那契数列'

# 从文件读取prompt
llm -f prompt.txt

# 管道输入(适合处理命令输出)
cat app.py | llm '解释这段代码的功能'

当使用管道输入时,命令行参数会作为补充提示追加在管道内容之后:

# 实际prompt为:<app.py内容> 解释这段代码的功能
cat app.py | llm '解释这段代码的功能'

交互式聊天会话

llm chat命令提供持续对话能力,特别适合需要上下文连贯的场景:

# 启动基础聊天
llm chat

# 指定模型聊天
llm chat -m gemini-1.5-flash-002

# 继续上次对话
llm chat -c

聊天增强功能

聊天模式支持多种高级特性,通过特殊命令增强交互体验:

# 多行输入模式
> !multi
  请分析以下错误日志:
  Traceback (most recent call last):
    File "app.py", line 10, in <module>
      print(1 / 0)
  ZeroDivisionError: division by zero
  !end

# 编辑器输入模式(适合长文本)
> !edit

# 插入片段
> !fragment code_snippet.py

llm/cli.py中定义了所有聊天命令的处理逻辑。

高级参数与选项

模型参数调优

通过-o参数可以调整模型生成选项,如温度、最大token数等:

# 设置温度参数(控制随机性)
llm '写一篇关于AI未来的短文' -o temperature 0.8

# 限制输出长度
llm '总结这个文档' -o max_tokens 300

使用llm models --options可以查看每个模型支持的具体参数:

llm models --options -m gpt-4o

系统提示词技巧

系统提示词(System Prompt)是塑造AI行为的强大工具,通过-s参数设置:

# 设置系统提示词
llm '分析用户评论情感' -s '你是情感分析专家,仅返回正面/负面/中性及分数'

# 保存为模板供后续使用
llm -s '你是Python代码审查专家,重点检查性能问题' --save code_reviewer

保存的模板可以通过-t参数快速调用:

cat new_feature.py | llm -t code_reviewer

模板功能在llm/templates.py中实现,存储在本地数据库中。

多模态与附件处理

部分模型(如GPT-4o、Gemini)支持图片等非文本输入,通过-a参数添加:

# 分析图片内容
llm "描述这张图片" -a ./screenshot.png

# 处理多个附件
llm "比较这两张图片的异同" -a image1.jpg -a image2.png

# 从标准输入管道图片
curl https://example.com/image.jpg | llm "分析图片主题" -a -

对于特殊格式,可使用--at参数指定MIME类型:

cat data.bin | llm "分析这个文件内容" --at - application/pdf

工具调用与函数执行

LLM支持直接调用Python函数,实现与外部系统的交互:

# 定义并调用简单函数
llm --functions '
def multiply(x: int, y: int) -> int:
    """Multiply two numbers."""
    return x * y
' '计算34234乘以213345'

添加--td参数可以调试工具调用过程:

llm --functions '
def multiply(x: int, y: int) -> int:
    """Multiply two numbers."""
    return x * y
' '34234 * 213345等于多少' --td

输出会显示详细的工具调用过程:

Tool call: multiply({'x': 34234, 'y': 213345})
  7303652730
34234 multiplied by 213345 is 7,303,652,730.

工具调用功能在llm/tools.py中实现,支持复杂的工具链调用。

文本嵌入与向量操作

llm embed命令提供文本向量化功能,可用于语义搜索、聚类等场景:

# 生成文本嵌入并保存到文件
llm embed -t '机器学习基础概念' -o embedding.json

# 批量处理文本文件
llm embed-multi texts/ -o embeddings.db

嵌入功能在llm/embeddings.py中实现,支持多种嵌入模型和存储后端。

实用技巧与最佳实践

代码生成与提取

使用-x参数可以提取AI生成的代码块,直接保存为文件:

llm '写一个Python函数计算阶乘' -x > factorial.py

片段管理

对于常用的长文本或prompt,可以保存为片段反复使用:

# 保存片段
llm fragments set code_guidelines ./coding_standards.md

# 使用片段
llm -f code_guidelines '检查这段代码是否符合规范'

历史记录与日志

llm logs命令可以查看所有历史交互:

# 查看最近5条记录
llm logs -n 5

# 搜索包含特定关键词的记录
llm logs -q 'Python'

# 查看完整对话
llm logs -c --cid 01h53zma5txeby33t1kbe3xk8q

日志功能在llm/logging.py中实现,数据存储在SQLite数据库中。

总结与进阶

LLM命令行工具将强大的AI能力直接带入终端,通过本文介绍的技巧,你可以:

  1. 高效执行单次prompt任务
  2. 构建持续的交互式聊天
  3. 处理图片等多模态输入
  4. 调用外部工具扩展功能
  5. 生成和处理文本嵌入
  6. 管理和复用提示词模板

要深入了解更多高级功能,可以查阅:

通过这些工具和技巧,你可以将AI能力无缝集成到日常开发和工作流中,大幅提升 productivity。

提示:定期运行llm upgrade更新到最新版本,获取新功能和改进。

登录后查看全文
热门项目推荐
相关项目推荐