@fencyai/react
官方反应 SDK 为 (法语)。 。 。 .
详情请访问 (原始内容存档于2018-03-21) (英语). docs.gency.ai。 。 。 .
设置
挂载 FencyProvider 一次在应用根。 每个 useAgentTasks 钩子和
它的每一个代理任务 共享相同的流。 不增加每名提供者
页面、组件、钩子或任务.
import { loadFency } from '@fencyai/js'
import { FencyProvider, useAgentTasks } from '@fencyai/react'
const fency = loadFency({ publishableKey: 'pk_your_publishable_key' })
export default function App() {
return (
<FencyProvider
fency={fency}
fetchCreateStreamClientToken={async () => {
const res = await fetch('/api/stream-client-token', { method: 'POST' })
return res.json()
}}
>
<Chat />
<Search />
</FencyProvider>
)
}
function Chat() {
const { createAgentTask } = useAgentTasks({
fetchCreateAgentTaskClientToken: fetchChatToken,
})
return null
}
function Search() {
const { createAgentTask } = useAgentTasks({
fetchCreateAgentTaskClientToken: fetchSearchToken,
})
return null
}
fetchCreateStreamClientToken 不是每个任务的名称。 提供者重复使用 a
5分钟左右,然后薄荷一个新的。 你的后端应该
POST /v1/sessions 与 { createStream: {} } 返回时 { clientToken }。 。 。 .