mcpField
A
aicore-sdk-js

aicore-sdk-js

github.com/sap开发10122 次安装6 天前更新
代码仓库

关于 aicore-sdk-js

为使用 @sap-ai-sdk v2 的 SAP AI Core JavaScript 和 TypeScript 代码生成提供指引,涵盖编排、OpenAI 兼容访问、LangChain、grounding 等场景,并提供模板和参考资料。

主要功能

  1. 01@sap-ai-sdk v2 代码指引
  2. 02聊天与流式处理模板
  3. 03支持 OpenAI 和 LangChain
  4. 04Grounding、批处理和提示词注册示例
  5. 05离线参考资料及可选 Context7 文档

适用场景

  1. 01生成聊天或流式集成代码
  2. 02通过 LangChain 连接应用
  3. 03添加文档 grounding 或托管提示词
  4. 04编写批量 LLM 或表格预测代码

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sap/ai-skills-library --skill aicore-sdk-js

安装后在 Claude Code 中输入/aicore-sdk-js确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
assets/
chat_openai_proxy.ts
chat_sap_sdk.ts
context_registry.ts
document_grounding.ts
langchain_openai.ts
langchain_orchestration.ts
llm_batch.ts
openai_native.ts
prompt_registry.ts
realtime.ts
rpt.ts
streaming.ts
tabular_orchestration.ts
evals/
evals.json
trigger_evals.json
references/
SDK_JS.md

详细介绍

规则

  1. 如果尚不清楚部署 URL,请先查看 SAP AI Core 控制台,或联系管理员以列出或创建部署,然后再生成代码。
  2. 生成的代码注释中务必包含 aicore configure 凭据配置指引;设置详情请参阅连接到 AI Core。
  3. 此技能不支持 JS/TS 生命周期管理(创建/列出/删除部署)——请使用 SAP AI Core 控制台,或联系管理员管理部署。
  4. 目标版本为 @sap-ai-sdk v2(orchestration 2.14+)。首选调用模式是将 messages 直接传给 chatCompletion() / stream()。只有当用户明确需要服务端可复用模板时,才使用带有 {{?placeholder}} 值的 promptTemplating.prompt.template。绝不要生成 v1 形式的 llm: { model_name } / templating: { template }——它无法通过 v2 编译。
  5. 绝不生成 Python 代码片段——此技能仅支持 JS/TS。如果用户要求 Python,请告知他们此仓库中没有可用的 Python 技能,并指向 https://sap.github.io/ai-sdk/ 查看 Python SDK 指引。
  6. 生成代码前,请收集以下信息——只询问用户尚未提供的内容:
    • 框架:@sap-ai-sdk/*(推荐)/@sap-ai-sdk/langchain(LangChain)/通过 LiteLLM 代理使用 OpenAI npm 包?
    • 使用场景:聊天/流式传输/嵌入?
    • 运行时:Node.js/Bun/浏览器?
    • 模型 + Deployment ID:查看 SAP AI Core 控制台,确认是否已有部署
    • 切换模型的意向(仅当用户指定 OpenAI 模型,例如 gpt-4o、gpt-4.1 等时询问):他们之后是否计划切换模型(例如切换到 Claude 或 Gemini)?如果是 → 推荐使用 @sap-ai-sdk/orchestration,以便灵活切换。如果他们希望继续使用 OpenAI → 使用 @sap-ai-sdk/openai(SapOpenAi.createClient)作为更简单的原生 OpenAI SDK 替代方案;无需 LiteLLM 代理。

资料来源与回退

按以下顺序使用最佳可用资料来源。某个来源不可用时,绝不要因此停下。

  1. 内置参考(始终可用)。 references/SDK_JS.md 和 assets/*.ts 是经过编译检查的 v2 基准。它们适用于常见场景(聊天、流式传输、LangChain、嵌入、代理),无需网络或 MCP。默认使用它们。
  2. Context7 MCP(如可用则使用)。 _如果_本次会话中已注册 context7 的 query-docs 工具,请优先使用它获取最新 API、特定版本细节,或内置参考标记为快速变化的功能(工具调用、数据屏蔽、文档依据、提示词注册表)。库 ID:/websites/sap_github_io_ai-sdk_js。如果该工具不可用,则静默回退到内置参考——不要要求用户安装它。
  3. 网页文档(最后手段)。 对于以上来源均未涵盖的内容,请指向 llms.txt,或获取在线文档。

不要凭记忆捏造 API 形式——此 SDK 的 v1 和 v2 API 不同,猜测会导致过时代的 v1 代码。如果不确定,存在来源 2 时使用来源 2,否则使用来源 3。


资产索引

用例模板安装
通过 @sap-ai-sdk/orchestration 聊天(推荐)assets/chat_sap_sdk.tsnpm install @sap-ai-sdk/orchestration
通过 @sap-ai-sdk/orchestration 流式传输assets/streaming.tsnpm install @sap-ai-sdk/orchestration
原生 OpenAI SDK(聊天/流式传输/嵌入/Responses)assets/openai_native.tsnpm install @sap-ai-sdk/openai openai zod
通过 AzureOpenAiChatClient 使用 LangChainassets/langchain_openai.tsnpm install @sap-ai-sdk/langchain @langchain/core
通过 OrchestrationClient 使用 LangChainassets/langchain_orchestration.tsnpm install @sap-ai-sdk/langchain @langchain/core
RAG / 文档 groundingassets/document_grounding.tsnpm install @sap-ai-sdk/document-grounding
托管提示词模板assets/prompt_registry.tsnpm install @sap-ai-sdk/prompt-registry
大模型批处理任务assets/llm_batch.tsnpm install @sap-ai-sdk/llm-batch @sap-ai-sdk/ai-api @sap-ai-sdk/foundation-models
表格预测(SAP-RPT-1,非聊天)assets/rpt.tsnpm install @sap-ai-sdk/rpt
Context Registry(数据目标、表格工件、场景配置)assets/context_registry.tsnpm install @sap-ai-sdk/context-registry
表格编排(通过 Scenario Config 或内联上下文进行 RPT 预测)assets/tabular_orchestration.tsnpm install @sap-ai-sdk/tabular-orchestration
通过 WebSocket 实时语音/文本(gpt-realtime)assets/realtime.tsnpm install @sap-ai-sdk/openai openai ws
通过 OpenAI npm 包聊天(LiteLLM 代理)assets/chat_openai_proxy.tsnpm install openai

安装选项

# @sap-ai-sdk (recommended — native SAP SDK)
npm install @sap-ai-sdk/orchestration @sap-ai-sdk/foundation-models

# Native OpenAI SDK surface on AI Core (no LiteLLM proxy needed)
npm install @sap-ai-sdk/openai openai zod

# LangChain integration (no LiteLLM proxy needed)
npm install @sap-ai-sdk/langchain @langchain/core

# RAG, prompt templates, batch jobs, tabular prediction
npm install @sap-ai-sdk/document-grounding
npm install @sap-ai-sdk/prompt-registry
npm install @sap-ai-sdk/llm-batch @sap-ai-sdk/ai-api @sap-ai-sdk/foundation-models
npm install @sap-ai-sdk/rpt

# With bun
bun add @sap-ai-sdk/orchestration @sap-ai-sdk/foundation-models

# OpenAI npm package via LiteLLM proxy (only if you need a running proxy; prefer @sap-ai-sdk/openai)
npm install openai

快速开始(@sap-ai-sdk/orchestration)

直接传入 messages——这是默认模式。只有当用户明确需要可复用的服务端模板时,才使用带有 {{?placeholder}} 值的 promptTemplating.prompt.template。

import { OrchestrationClient } from "@sap-ai-sdk/orchestration";

const client = new OrchestrationClient({
  promptTemplating: {
    model: {
      name: "anthropic--claude-4.5-haiku",
      params: { temperature: 0.7 },
    },
  },
});

const response = await client.chatCompletion({
  messages: [
    { role: "system", content: "You are a helpful assistant." },
    { role: "user", content: "Hello!" },
  ],
});
console.log(response.getContent());

运行命令:npx tsx index.ts 或 bun run index.ts


交接

  • 想要 Java 代码? → 调用 aicore-sdk-java

何时加载参考文件

触发条件加载
@sap-ai-sdk/* API、OrchestrationClient、流式传输references/SDK_JS.md
LangChain、AzureOpenAiChatClient、@sap-ai-sdk/langchainreferences/SDK_JS.md
原生 OpenAI SDK、SapOpenAi、Responses APIreferences/SDK_JS.md
RAG、文档 grounding、提示词注册表、批处理、RPTreferences/SDK_JS.md
工具调用、数据屏蔽、grounding 配置内部机制Context7(如果可用),否则加载 references/SDK_JS.md

评论

支持 Markdown