ai fun
1.0.0
ai-fun은 실험적인 LLM 기반 함수 라이브러리입니다. 이를 통해 함수 목적, 매개변수 및 출력 스키마를 정의하고 백그라운드에서 코드를 생성하고 실행할 수 있습니다. Cursor/GitHub Copilot을 플러그형 라이브러리로 생각하세요.
npm i ai-fun
완전한 예:
example.ts
import { z } from 'zod'
import AIFunctionBuilder from 'ai-fun'
import NodeExec from 'ai-fun/src/backends/node'
import { anthropic } from '@ai-sdk/anthropic'
// Provide a LLM model
const llm = anthropic . chat ( 'claude-3-5-sonnet-20240620' )
// Create a new AI Function Builder using Node/exec backend
const backend = new NodeExec ( )
const ai = new AIFunctionBuilder ( llm , backend )
// Define the input parameters and output parameters of the function
const parameters = z . object ( { a : z . number ( ) , b : z . number ( ) } )
const output = z . number ( )
// Generate the function
const f = await ai . function ( 'add values provided' , parameters , output )
// Call the function and log the result
const result = await f ( { a : 1 , b : 2 } )
console . log ( result )
산출:
> bun example.ts
3
예제/에서 더 많은 예제를 찾을 수 있습니다.
계속하기 전에 이 Reddit 댓글을 읽어보세요.
비용 절감 조치를 위해 함수 캐싱이 기본적으로 활성화되어 있습니다. 기본적으로 함수는 .ai-fun.json
이라는 파일에 저장됩니다.
AIFunctionBuilder
에 제공할 수 있는 옵션은 다음과 같습니다.
{
debug ?: boolean
esModules?: boolean
cache?: boolean
cacheFile?: string
}
AIFunctionBackend
클래스를 구현하여 고유한 백엔드를 만들 수 있습니다.
export abstract class AIFunctionBackend {
abstract init ( codeContent : CodeContent ) : Promise < void >
abstract exec ( params : any ) : Promise < any >
}
예를 들어 src/backends/node를 참조하세요.
node:vm
exec 함수를 사용하여 AI 생성 함수를 실행합니다.
옵션:
{
debug ?: boolean
packageFile?: string
installPackages?: boolean
}
오픈 소스 프로젝트로서 우리는 커뮤니티의 기여를 환영합니다. 버그가 발생했거나 개선 사항을 추가하고 싶다면 언제든지 문제를 열거나 풀 요청을 보내주세요.