Kontext 在基于文本的 AI 应用——聊天、搜索,以及任何用户与模型对话的界面中——投放上下文相关的广告。你的应用在对话发生时把消息喂给 SDK;SDK 在后台调用我们的广告服务,并将中标广告渲染到你 UI 中挂载的广告位中。Documentation Index
Fetch the complete documentation index at: https://docs.kontext.so/llms.txt
Use this file to discover all available pages before exploring further.
流程
- 创建会话。 你的应用为每个聊天会话创建一个
Session实例,传入你的publisherToken、一个稳定的userId和conversationId。SDK 会在后台调用/init拉取服务端控制的开关(会话是否启用、preload 超时、遥测开关等)。 - 向 SDK 喂消息。 用户和助手每交换一条消息,应用就调用一次
session.addMessage(...)。这是 SDK 完成所有工作所需的唯一信号。 - SDK 在后台预加载广告。 每次
addMessage都会触发一次防抖后的POST /preload,携带对话上下文。服务端会针对本次预加载返回一个或多个广告。SDK 会把每个广告绑定到最新一条助手消息的 id(具体配对规则见 展示广告),并为每个拿到广告的 id 触发filled事件,否则触发no-fill。 - 在 UI 中挂载广告位。 当助手的回复出现在屏幕上时,应用渲染
<InlineAd messageId="..." />(具体组件名因 SDK 而异)。该组件只是一个渲染器——它不会发起请求——只是根据messageId查找已缓存的广告并把素材渲染进 iframe。 - 渲染期事件流回你的应用。 当广告加载、可见或被点击时,SDK 会触发
viewed、clicked和error事件。结合filled/no-fill一起订阅,可以驱动你自己的 UI——例如等广告就绪后再显示助手气泡。
你提供什么 vs SDK 处理什么
| 你提供 | SDK 处理 |
|---|---|
publisherToken(onboarding 时发放) | /init、/preload、/error、/debug 等网络请求 |
userId、conversationId(你生成的稳定 ID) | 广告缓存、按 message id 匹配、TTL |
通过 addMessage 传入消息列表 | 防抖、重试、请求取消 |
决定 <InlineAd /> 挂载在哪里 | iframe 渲染、可见性(viewability)追踪 |
| 可选的合规信号(见 合规) | 自动从标准 CMP 存储位置读取 TCF |
下一步
选择你的 SDK
安装 SDK、初始化会话、挂载一个组件并看到广告——每个 SDK 页面本身就是它的快速开始。
核心概念
每次 Kontext 接入背后的思维模型:会话、ID、消息、事件等。
最佳实践
上线前的自查清单——需要配置什么、需要监控什么、如何获得最高的填充率。
Demo
每个 SDK 都有可运行的示例应用——克隆下来填入你的 publisher token 即可运行。