Eai.Prompts (eai v0.1.7)

Copy Markdown

Prompt 注册表查询接口。

所有 prompt 定义集中在 config/prompts.exs,运行时通过本模块访问。

快速查表

iex> Eai.Prompts.all()          # 全部条目
iex> Eai.Prompts.default()      # 列表第一个(系统默认)
iex> Eai.Prompts.get(:coder)    # 按 :name atom 查找
iex> Eai.Prompts.names()        # 所有 name atom 列表
iex> Eai.Prompts.list()         # 打印 name + description 对照表

在 iex 中使用

iex> Eai.Chat.talk(prompt: :coder)
iex> Eai.Chat.talk(prompt: :analyst, content: "分析这段代码")
iex> Eai.Chat.talk(model: :gpt4o, prompt: :coder)

Summary

Functions

返回注册表中所有 prompt 条目(顺序与 prompts.exs 定义一致)。

提取 prompt 文本内容(content 字段)。

返回默认 prompt(注册表第一个条目)。

按 :name atom 查找 prompt,nil 返回默认,找不到返回 nil。

按 :name atom 查找 prompt,找不到抛出 ArgumentError。

打印 name → description 对照表,方便在 iex 中查看可用 prompts。

返回所有 :name atom 列表。

Types

prompt_entry()

@type prompt_entry() :: keyword()

Functions

all()

@spec all() :: [prompt_entry()]

返回注册表中所有 prompt 条目(顺序与 prompts.exs 定义一致)。

content(name)

@spec content(atom() | nil) :: String.t()

提取 prompt 文本内容(content 字段)。

default()

@spec default() :: prompt_entry()

返回默认 prompt(注册表第一个条目)。

get(name)

@spec get(atom() | nil) :: prompt_entry() | nil

按 :name atom 查找 prompt,nil 返回默认,找不到返回 nil。

get!(name)

@spec get!(atom()) :: prompt_entry()

按 :name atom 查找 prompt,找不到抛出 ArgumentError。

list()

@spec list() :: :ok

打印 name → description 对照表,方便在 iex 中查看可用 prompts。

names()

@spec names() :: [atom()]

返回所有 :name atom 列表。