Недоумение с открытым исходным кодом
Веб-сайт · Discord · Reddit
Наше внимание сосредоточено на создании основной функциональности и основных функций. Продолжая развивать Omniplex, мы стремимся внедрять лучшие практики, совершенствовать кодовую базу и внедрять новые функции для улучшения пользовательского опыта.
Чтобы запустить проект, измените код в компоненте Chat, чтобы использовать // Development Code
.
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
, чтобы включить новые типы данных плагина.tools
в api
, чтобы включить вызов новой функции плагина.api.ts
в файле utils
, включив в него новые данные плагина.chatSlice.ts
в store
, включив в него новый плагин-редуктор.components
для пользовательского интерфейса плагина.chat.tsx
, чтобы он обрабатывал новый плагин в useEffect
.source.ts
, чтобы использовать пользовательский интерфейс плагина.data.ts
в utils
, чтобы он отображался на вкладке плагина. ANTHROPIC_API_KEY= ******
chat
в api
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 ) ;
}
data
в utils
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.
Если у вас есть какие-либо вопросы или предложения, смело пишите нам в Контакте.
Приятного кодирования!