在脚本的 shebang 行中使用 LLM

Simon Willison's Blog 工具

摘要

Simon Willison 演示了如何在脚本的 shebang 行中使用 llm CLI 工具,从而直接从可执行文件执行 LLM 提示词与工具调用。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/05/11 22:50

# TIL:在脚本的 shebang 行中使用 LLM 来源:https://simonwillison.net/2026/May/11/llm-shebang/ Kim_Bruning 在 Hacker News 上(https://news.ycombinator.com/item?id=48073246#48090590): > 说真的,你现在可以把 shebang 放在一个英文文本文件上了(如果你足够勇敢的话)\[…\] 这启发我去探索用LLM(https://llm.datasette.io/en/stable/)来实现这一点的具体模式。下面是最简单的方法,它利用了LLM 片段(https://llm.datasette.io/en/stable/fragments.html): ``` #!/usr/bin/env -S llm -f 生成一幅鹈鹕骑自行车的 SVG ``` 不过你也可以通过 `-T 工具名称` 选项来集成工具调用(https://llm.datasette.io/en/stable/tools.html): ``` #!/usr/bin/env -S llm -T llm_time -f 写一首提及当前确切时间的俳句 ``` 甚至可以直接执行 YAML 模板,在其中用 Python 函数定义额外的工具: ``` #!/usr/bin/env -S llm -t model: gpt-5.4-mini system: | 使用工具来执行计算 functions: | def add(a: int, b: int) -> int: return a + b def multiply(a: int, b: int) -> int: return a * b ``` 然后: ``` ./calc.sh '计算 2344 * 5252 + 134' --td ``` 输出结果(借助 `--td` 工具调试选项)为: ``` 工具调用:multiply({'a': 2344, 'b': 5252}) 12310688 工具调用:add({'a': 12310688, 'b': 134}) 12310822 2344 × 5252 + 134 = **12,310,822** ``` 阅读完整的 TIL 文章(https://til.simonwillison.net/llms/llm-shebang#templates-with-tools),可以找到一个更复杂的示例,它使用 Datasette SQL API 来回答关于我博客内容的问题。

相似文章

llm 0.32a0

Simon Willison's Blog

本文宣布 Simon Willison 开发的 'llm' 命令行工具发布 0.32a0 版本,并提供有关大型语言模型发展的月度简报。

llm 0.31.1

Simon Willison's Blog

Simon Willison 发布的 llm 0.31.1,这是一个用于与大语言模型交互的命令行工具。

llm 0.32a3

Simon Willison's Blog

llm 0.32a3版本发布,这是Simon Willison的命令行工具的一个alpha版本,用于与大语言模型交互。