@ findable-ai/ sdk (中文(简体) )
零依赖性类型Script客户端 可查找 合伙人API. 在浏览器、Node.js和任何本地运行时间工作 fetch。 。 。 .
完整文档数字 : 可找到的文件
安装
npm install @findable-ai/sdk
快开始
import { FindableClient } from '@findable-ai/sdk';
const client = new FindableClient({
apiKey: 'YOUR_API_KEY',
buildingOwnerId: 'YOUR_BUILDING_OWNER_ID',
});
// Search documents
const results = await client.search({ query: 'fire safety', buildingId: 'bld-123' });
console.log(results.hits);
// Ask a question (non-streaming)
const answer = await client.assistant({
buildingId: 'bld-123',
query: 'What are the fire safety requirements?',
});
console.log(answer.answer);
流线
assistantStream() 返回实时服务器发送事件的同步可执行性 :
const stream = client.assistantStream({
buildingId: 'bld-123',
query: 'Summarise the ventilation specs',
});
for await (const event of stream) {
switch (event.event) {
case 'text':
process.stdout.write(event.text);
break;
case 'finish':
console.log('\n\nCitations:', event.citations);
break;
}
}
// Cancel at any time
stream.abort();
流出事件
| 活动 | 字段 | 说明 |
|---|---|---|
start | threadId | 流已打开, 线程已创建 |
text | text | 递增式回答文本块 |
thinking | text | 示范推理文本(当使用高推理努力时) |
action | state, (中文(简体) ), value, (中文(简体) ), result | 代理进度/行动更新 |
finish | answer, (中文(简体) ), threadId, (中文(简体) ), citations, (中文(简体) ), citedDocuments, (中文(简体) ), followUpSuggestions | 完整的元数据回复 |
error | message | 发生错误 |
API 参考
FindableClient
new FindableClient({ apiKey: string, buildingOwnerId: string, baseUrl?: string })
方法
| 方法 | 回返 | 说明 |
|---|---|---|
assistant(options) | Promise<AssistantResponse> | 问一个问题,得到一个完整的回答 |
assistantStream(options) | AsyncIterable<AssistantStreamEvent> & { abort() } | 用实时流线询问 |
assistantAcrossBuildings(options) | Promise<AssistantResponse> | 问楼对面,请回答 |
assistantAcrossBuildingsStream(options) | AsyncIterable<AssistantStreamEvent> & { abort() } | 用实时流线询问跨建筑物 |
search(options) | Promise<SearchResult> | 搜索文档 |
listBuildings() | Promise<Building[]> | 列出所有建筑物 |
getBuilding(id) | Promise<Building> | 单栋楼 |
先前的名字 ask(), (中文(简体) ), askStream(), (中文(简体) ), askAcrossBuildings() 财务报告和审定财务报表
askAcrossBuildingsStream(),则 Ask* 类型,则被贬值。 他们继续工作
没有删除日期; 替换 ask 与 assistant 在名称中,当你下次触摸代码.
选项
// Assistant
{ buildingId: string, query: string, language?: 'en' | 'no' | 'nb' | 'nn',
threadId?: string, attachedDocumentIds?: string[], mode?: 'fast' | 'balanced' | 'deep',
reasoningEffort?: 'low' | 'medium' | 'high' /* deprecated */, useAgenticRag?: boolean }
// Search
{ query: string, buildingId?: string, maxResults?: number, startIndex?: number }
选择一个答案需要多少工作
mode 是一个设置,有三个位置:
mode | 你得到的东西 |
|---|---|
'fast' | 最便宜和最快: 大约15x比 'balanced' 和几倍快, 较浅的合成 在许多文件. |
'balanced' | 默认. 每个请求在 mode 省略. |
'deep' | 最彻底最贵. 对于确实需要从许多来源广泛推理的问题. |
偏爱 'fast' 用于查找和单文件问题。 如果你运行助理在一个
批次(例如夜间工作,询问相同的问题)
这是成本最高的场所.
奥米 mode 而不作任何改变:要求得到的答案完全如原样
在选项存在之前.
reasoningEffort 已折旧为 mode从来没有单独拨号:
'high' 行为就像 mode: 'deep',以及 'low' 财务报告和审定财务报表 'medium' 都这样
mode: 'balanced'. 这种行为仍然被接受,并在
mode 已经设定.
处理错误
import {
FindableClient,
AuthError,
NotFoundError,
FindableError,
} from '@findable-ai/sdk';
try {
await client.assistant({ buildingId: 'bld-123', query: 'Hello' });
} catch (err) {
if (err instanceof AuthError) {
// Invalid or missing API key (401/403)
} else if (err instanceof NotFoundError) {
// Building not found (404)
} else if (err instanceof FindableError) {
// Other API error — check err.status and err.message
}
}
反应
关于滴入反应组件和钩子,见 @findable-ai/react。 。 。 .
文档
许可证
麻省理工学院