오픈 소스의 복잡성
웹사이트 · Discord · Reddit
우리의 초점은 핵심 기능과 필수 기능을 확립하는 것입니다. Omniplex를 계속 개발하면서 우리는 모범 사례를 구현하고, 코드베이스를 개선하고, 사용자 경험을 향상시키기 위한 새로운 기능을 도입하는 데 최선을 다하고 있습니다.
프로젝트를 실행하려면 // Development Code
사용하도록 Chat 구성 요소의 코드를 수정하세요.
git clone [email protected]:[YOUR_GITHUB_ACCOUNT]/omniplex.git
yarn
.env.local
에 비밀을 입력하세요. BING_API_KEY=
OPENAI_API_KEY=
OPENWEATHERMAP_API_KEY=
ALPHA_VANTAGE_API_KEY=
FINNHUB_API_KEY=
yarn dev
이것은 단지 해키적인 방법이지만 구현하기가 매우 쉽습니다. 앞으로는 플러그인을 추가하는 더욱 강력한 방법을 추가할 예정입니다. 우리가 추가한 샘플 플러그인을 통해 자유롭게 이해해 보세요.
types.ts
의 유형을 업데이트하세요.api
의 tools
API를 업데이트하세요.utils
파일의 api.ts
업데이트하세요.store
의 chatSlice.ts
업데이트하세요.components
디렉터리에 새 폴더를 만듭니다.useEffect
에서 새 플러그인을 처리하도록 chat.tsx
를 업데이트하세요.source.ts
업데이트하세요.utils
의 data.ts
업데이트하여 플러그인 탭에 표시하세요. ANTHROPIC_API_KEY= ******
api
에서 chat
업데이트 import Anthropic from "@anthropic-ai/sdk" ;
import { OpenAIStream , StreamingTextResponse } from "ai" ;
const anthropic = new Anthropic ( {
apiKey : process . env . ANTHROPIC_API_KEY ,
} ) ;
export const runtime = "edge" ;
export async function POST ( req : Request ) {
const {
messages ,
model ,
temperature ,
max_tokens ,
top_p ,
frequency_penalty ,
presence_penalty ,
} = await req . json ( ) ;
const response = await anthropic . messages . create ( {
stream : true ,
model : model ,
temperature : temperature ,
max_tokens : max_tokens ,
top_p : top_p ,
frequency_penalty : frequency_penalty ,
presence_penalty : presence_penalty ,
messages : messages ,
} ) ;
const stream = OpenAIStream ( response ) ;
return new StreamingTextResponse ( stream ) ;
}
utils
에서 data
업데이트 export const MODELS = [
{ label : "Claude 3 Haiku" , value : "claude-3-haiku-20240307" } ,
{ label : "Claude 3 Sonnet" , value : "claude-3-sonnet-20240229" } ,
{ label : "Claude 3 Opus" , value : "claude-3-opus-20240229" } ,
] ;
우리는 최근 페이지 디렉터리에서 앱 디렉터리로 전환했으며, 여기에는 프로젝트 구조와 아키텍처가 크게 변경되었습니다. 결과적으로 코드베이스에서 일부 불일치나 거친 부분이 발생할 수 있습니다.
우리는 커뮤니티의 기여를 환영합니다! Openpanel에 기여하고 싶다면 다음 단계를 따르세요.
끌어오기 요청을 제출하기 전에 코드가 코딩 규칙을 따르고 모든 테스트를 통과하는지 확인하세요.
이 프로젝트는 AGPL-3.0 라이선스에 따라 라이선스가 부여됩니다.
질문이나 제안 사항이 있는 경우 언제든지 연락처로 문의해 주세요.
즐거운 코딩하세요!