/
githubmirror
/
workgpt
Обзор
Документация
Войти
/
githubmirror
/
workgpt
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/scrape.ts
48 строк
1 KB
Alex MacCaw
Improve loop mechanism and onResult API (#2)
16 июн 2023, 07:04
Не верифицирован
16 июн 2023, 07:04
c1d0c3e
Код
Авторство
О чём код?
import { z } from 'zod' import { Api, invokable } from '../src/apis' import { OpenAiAgent } from '../src/chat-agents/open-ai' import { WorkGptRunner } from '../src/runners/workgpt' import { haltProgram } from '../src/runners/control' import { TextBrowser } from '../src/apis/text-browser' export class WorkGptControl extends Api { @invokable({ usage: 'Finishes the program. Call when you have an answer.', schema: z.object({ fundingRounds: z.array( z.object({ organizationName: z.string(), transactionName: z.string(), moneyRaised: z.string(), leadInvestors: z.array(z.string()), }) ), }), }) onFinish(result: any) { haltProgram(result) } } async function main() { const agent = new OpenAiAgent({ verbose: true, temperature: 0, model: 'gpt-4-0613', }) const apis = await Promise.all([new TextBrowser(), new WorkGptControl()]) const runner = new WorkGptRunner({ agent, apis, }) const result = await runner.runWithDirective( 'Get the featured funding rounds of https://www.crunchbase.com' ) console.log('Result', JSON.stringify(result, null, 2)) } main()