* 辍学 AI 运行时间@dropout-ai/runtime(中文(简体) )
通用AI 节点行为分析和捕获
Dropout是一个轻量级,"安装-并遗忘"的运行时间,可以自动从您的应用程序中捕取AI交互(即时和应答),而不需要代码更改您的API呼叫. 它充当被动的观察者,对网络层进行补丁以确保你不会错过对话.
- 通用: 与OpenAI、Anthropic、Genkit、LangChain、Axios和Axios合作
fetch。 。 。 . - - 安全点: 为生产而设计,采用无声故障模式和浏览器守护.
- 零密度: 使用火灾和遗忘记录 以确保您的应用保持快速.
- 强壮: 明确的初始化保证了你总是知道它运行的时间.
QQ 快速启动 (Wizard)
最容易启动的方法就是运行我们的安装器. 它会安装软件包,并给你准确的代码片段来复制.
npx @dropout-ai/wizard@latest
🛠️ 手动安装和使用
如果你喜欢手动安装,请遵循这两个步骤.
1. 安装软件包
npm install @dropout-ai/runtime
# or
pnpm add @dropout-ai/runtime
2. 初始化("通用"方法)
要开始捕捉,必须明确初始化退学。 放置此代码片段 尽快 在申请生命周期中(在您拨打任何AI电话之前).
打电话很安全 init() 多次; 它只会运行一次 .
QQ 对于 Next.js (App路由器)
文件 : src/instrumentation.ts (或 instrumentation.ts 输入根)
export async function register() {
if (process.env.NEXT_RUNTIME === 'nodejs') {
const { default: Dropout } = await import('@dropout-ai/runtime');
Dropout.init({
apiKey: process.env.DROPOUT_API_KEY,
projectId: process.env.DROPOUT_PROJECT_ID,
debug: true // Set to false in production
});
}
}
QQ 对于节点.js / Express / 快速
文件 : index.js 或者说 server.js (文件页数)
require('dotenv').config(); // Ensure env vars are loaded first
const Dropout = require('@dropout-ai/runtime');
Dropout.init({
apiKey: process.env.DROPOUT_API_KEY,
projectId: process.env.DROPOUT_PROJECT_ID,
debug: process.env.NODE_ENV !== 'production'
});
const express = require('express');
const app = express();
// ...
为雀巢JS服务
文件 : src/main.ts
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import Dropout from '@dropout-ai/runtime';
async function bootstrap() {
// ✅ Initialize before the app starts
Dropout.init({
apiKey: process.env.DROPOUT_API_KEY,
projectId: process.env.DROPOUT_PROJECT_ID,
debug: true
});
const app = await NestFactory.create(AppModule);
await app.listen(3000);
}
bootstrap();
QQ 配置
| 选项 | 类型 | 说明 | 需求 |
|---|---|---|---|
projectId | string | 仪表盘上的你的项目ID. | ✅ |
apiKey | string | 您的密钥( Y)dp_live_...) (中文(简体) ). | ✅ |
debug | boolean | 设定 true 可以看到控制台中的"QQ在线"日志和错误. | 没有 |
privacy | string | full (抓取文本)或 mask (只有元数据). 默认 : full。 。 。 . | 没有 |
sessionId | string | 可选初始会话ID. 如果不提供,则产生一个. | 没有 |
captureEndpoint | string | 自定义捕获端点( 用于测试) 。 默认:生产 URL. | 没有 |
QQ 会话管理
重要内容: A 类 第二届会议 代表单一的对话线程. 默认情况下,Dropout在初始化时生成一个会话ID并用于所有交互. 为了正确分析,你应该打电话 startNewSession() 当用户开始新对话时.
何时呼叫 startNewSession()
当 :
- 用户点击"新聊天"按钮
- 用户切换到不同的对话线索
- 用户开关 AI 模型( 如果您想将其作为新对话)
- 页面刷新和您想要开始新会话
示例使用
const Dropout = require('@dropout-ai/runtime');
// Initialize once at app startup
const dropout = Dropout.init({
apiKey: process.env.DROPOUT_API_KEY,
projectId: process.env.DROPOUT_PROJECT_ID
});
// Later, when user clicks "New Chat":
app.post('/api/new-chat', (req, res) => {
const newSessionId = dropout.startNewSession();
console.log(`Started new session: ${newSessionId}`);
res.json({ sessionId: newSessionId });
});
// Or with a custom session ID:
dropout.startNewSession('user_123_chat_456');
类型脚本示例
import Dropout from '@dropout-ai/runtime';
const dropout = Dropout.init({
apiKey: process.env.DROPOUT_API_KEY!,
projectId: process.env.DROPOUT_PROJECT_ID!
});
// Access current session
console.log(dropout.currentSessionId);
// Start new session
const newSessionId = dropout.startNewSession();
* 解决问题
问:我怎么知道它有用吗?
设定 debug: true 在你的配置。 当您的应用程序启动时, 您应该立即看到此消息 :
[Dropout] 🟢 Online | Project: <Your-Project-ID>
问:我看不到任何日志.
- 检查你打电话
Dropout.init()。 。 。 . - 保证您
apiKey财务报告和审定财务报表projectId并非未定义( 记录它们以检查) . - 如果使用 Next.js, 请确保
instrumentation.ts位于正确的文件夹中(src/如果用的话).
问:这与边缘函数有用吗?
没有。 此运行时间依赖于Node.js核心模块(http, (中文(简体) ), https) (中文(简体) ). 它不支持Vercel Edge Runtime或Cloudflare工人.
非节点.js 用法(REST API)
如果您正在使用 Python, Go 或其他语言, 您可以手动将交互日志发送到我们的摄入端点 .
终点 : POST https://hipughmjlwmwjxzyxfzs.supabase.co/functions/v1/capture-sealed
标题 : x-dropout-key: <YOUR_API_KEY>
乔森 { "project id":"你的"项目""id", "转":"相助","相助", "内容":"AI回复文本...", "模型":"gpt-4","g", "提供方":"open" {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
许可证
麻省理工学院