不隐藏底层。pi-ai 层提供了统一的 provider 抽象,但如果你需要直接访问底层 provider 的原始 API(比如 Anthropic 的 prompt caching),可以直接导入 @mariozechner/pi-ai/anthropic 使用 provider 特定的功能。抽象是可穿透的。
是否意味着,agent 系统不应该过度抽象,或者不要适配更多的 provider ?
"可穿透的抽象"是 agent 系统的关键设计模式:LLM provider 之间的差异是真实存在的(prompt caching、extended thinking、safety settings 等),完全抹平差异意味着丧失各家最强能力。pi 的双通道设计(stream vs streamSimple)是"统一接口 + 逃生舱"模式的典范。