이번 주 인기 있는 AI 관련 오픈소스 프로젝트 소개
안녕하세요, AI와 오픈소스에 관심 있는 여러분! 이번 주 깃헙에서 인기 있는 AI 관련 오픈소스 프로젝트를 소개해드리겠습니다. 각 프로젝트는 독특한 기능과 목적을 가지고 있으며, 여러분의 AI 개발 여정을 더욱 풍부하게 만들어줄 것입니다. 그럼 시작해볼까요?
1. fabric
개요
fabric은 인간의 능력을 AI로 증강시키기 위한 오픈소스 프레임워크입니다. 이 프레임워크는 다양한 문제를 해결하기 위해 크라우드소싱된 AI 프롬프트 세트를 제공하며, 이를 통해 일상적인 작업을 더욱 효율적으로 수행할 수 있습니다.
주요 기능
- 패턴(Patterns): 콘텐츠 요약, 비디오에서 주요 인사이트 추출, 에세이 작성 등 다양한 작업을 위한 AI 프롬프트 모음.
- 커스텀 AI 워크플로우: 사용자 정의 AI 워크플로우와 개인 AI 인프라 구축 가능.
사용 방법
설치:
- Python 3.10+ 설치.
- 저장소 클론:
git clone https://github.com/danielmiessler/fabric.git - 프로젝트 디렉토리로 이동:
cd fabric pipx설치 후fabric설치:pipx install .- 설정 실행:
fabric --setup - 쉘 재시작 후 설치 확인:
fabric --help
fabric 클라이언트 사용:
- OpenAI API 또는 호환 서버를 위한 환경 변수 설정.
- 다양한 옵션으로 패턴 실행: 예를 들어, 콘텐츠 요약:
pbpaste | fabric --pattern summarize
패턴 탐색 및 생성:
/patterns디렉토리에서 기존 패턴 탐색.- 사용자 정의 패턴 생성 후
~/.config/fabric/patterns에 저장. - 사용자 정의 패턴 사용:
pbpaste | fabric -p your_custom_pattern
고급 사용법:
- 개인 Fabric 서버(Mill) 설정 및 관리.
- YouTube 트랜스크립트용
yt및 오디오 트랜스크립션용ts와 같은 도우미 앱 사용.
더 자세한 내용은 프로젝트의 문서를 참고하세요.
2. MiniCPM-V
개요
MiniCPM-V는 비전-언어 이해를 위한 엔드사이드 멀티모달 대형 언어 모델(MLLM) 시리즈입니다. 이 모델은 이미지와 텍스트 입력을 받아 고품질의 텍스트 출력을 생성합니다. 최신 모델인 MiniCPM-Llama3-V 2.5는 80억 개의 파라미터를 가지고 있으며, 모바일 기기에서도 효율적으로 배포할 수 있습니다.
주요 기능
- 비전-언어 작업에서 높은 성능.
- 강력한 OCR 기능.
- 30개 이상의 언어 지원.
- 양자화 및 최적화 기술을 통한 엔드사이드 장치에서의 효율적인 배포.
- 다양한 프레임워크 및 포맷 지원.
사용 방법
설치:
- 저장소 클론 후 소스 폴더로 이동:
git clone https://github.com/OpenBMB/MiniCPM-V.git cd MiniCPM-V - Conda 환경 생성:
conda create -n MiniCPM-V python=3.10 -y conda activate MiniCPM-V - 종속성 설치:
pip install -r requirements.txt
- 저장소 클론 후 소스 폴더로 이동:
추론:
- 다중 턴 대화:
from chat import MiniCPMVChat, img2base64 import torch import json torch.manual_seed(0) chat_model = MiniCPMVChat('openbmb/MiniCPM-Llama3-V-2_5') im_64 = img2base64('./assets/airplane.jpeg') msgs = [{"role": "user", "content": "Tell me the model of this aircraft."}] inputs = {"image": im_64, "question": json.dumps(msgs)} answer = chat_model.chat(inputs) print(answer)
- 다중 턴 대화:
모바일 배포:
- Android 기기에 MiniCPM-Llama3-V 2.5 또는 MiniCPM-V 2.0 APK 설치.
더 자세한 내용은 프로젝트의 문서를 참고하세요.
3. CopilotKit
개요
CopilotKit은 맞춤형 AI 코파일럿을 구축, 배포 및 운영하기 위한 오픈소스 프레임워크입니다. 이 프레임워크를 통해 앱 내 AI 챗봇, AI 에이전트 및 AI 텍스트 영역을 쉽게 만들 수 있습니다.
주요 기능
- CopilotChat: 앱의 프론트엔드, 백엔드 및 서드파티 서비스와 상호작용할 수 있는 앱 인식 AI 챗봇 구축.
- CopilotTextarea: AI 지원 텍스트 생성, 자동 완성 및 편집 기능을 갖춘
<textarea />대체. - 앱 내 에이전트: 실시간 애플리케이션 컨텍스트에 접근하고 앱 내에서 작업을 수행할 수 있는 에이전트.
- Co-Agents: 최종 사용자가 앱 내 에이전트의 작업을 관찰하고 개입할 수 있도록 지원.
사용 방법
설치:
npm i @copilotkit/react-core @copilotkit/react-ui @copilotkit/react-textareaCopilotSidebar 예제:
import "@copilotkit/react-ui/styles.css"; import { CopilotKit } from "@copilotkit/react-core"; import { CopilotSidebar } from "@copilotkit/react-ui"; function MyAmazingContent() { const importantInfo = useImportantInfo(); useCopilotReadable({ description: "Very important information", value: importantInfo, }); useCopilotAction( { name: `selectDestinations_${toCamelCase(heading)}`, description: `Set the given destinations as 'selected', on the ${heading} table`, parameters: [ { name: "destinationNames", type: "string[]", description: "The names of the destinations to select", required: true, }, ], handler: async ({ destinationNames }) => { setCheckedRows((prevState) => { const newState = { ...prevState }; destinationNames.forEach((destinationName) => { newState[destinationName] = true; }); return newState; }); }, }, [] ); return <YourContent />; } export default function App() { return ( <CopilotKit url="/api/copilotkit/chat"> <CopilotSidebar> <MyAmazingContent /> </CopilotSidebar> </CopilotKit> ); }CopilotTextarea 예제:
import "@copilotkit/react-textarea/styles.css"; import { CopilotTextarea } from "@copilotkit/react-textarea"; import { CopilotKit } from "@copilotkit/react-core"; useCopilotReadable({ description: "The description of your data", value: relevantInformation, }); useMakeCopilotDocumentReadable(document); return ( <CopilotKit url="/api/copilotkit/chat"> <CopilotTextarea className="p-4 w-1/2 aspect-square font-bold text-3xl bg-slate-800 text-white rounded-lg resize-none" placeholder="A CopilotTextarea!" autosuggestionsConfig={{ purposePrompt: "A COOL & SMOOTH announcement post about CopilotTextarea. Be brief. Be clear. Be cool.", forwardedParams: { max_tokens: 25, stop: ["\n", ".", ","], }, }} /> </CopilotKit> );
더 자세한 내용은 프로젝트의 문서를 참고하세요.
4. Cognita
개요
Cognita는 Retrieval-Augmented Generation (RAG) 시스템을 위한 오픈소스 프레임워크입니다. 이 프레임워크는 Langchain/LlamaIndex를 활용하여 모듈화되고 확장 가능한 프로덕션 환경을 제공합니다.
주요 기능
- 모듈화된 RAG 구성 요소: API 기반의 유닛으로 구성되어 확장 가능.
- 증분 인덱싱: 다양한 문서 검색기 및 임베딩 모델 지원.
- 노코드 UI: 비기술 사용자가 문서를 업로드하고 QnA를 수행할 수 있는 UI 제공.
- 로컬 및 프로덕션 배포: Docker를 사용한 로컬 배포 및 Truefoundry를 통한 프로덕션 배포 지원.
사용 방법
Docker Compose를 사용한 로컬 실행:
- 저장소 클론 후 프로젝트 루트로 이동.
- 다음 명령어로 서비스 시작:
docker-compose --env-file compose.env up --build - 서비스 접근:
- Infinity 서버:
http://localhost:7997 - Qdrant 서버:
http://localhost:6333 - 백엔드:
http://localhost:8000 - 프론트엔드:
http://localhost:5001
- Infinity 서버:
소스에서 실행:
- Python >=3.10.0 설치 확인.
- 가상 환경 설정:
python3 -m venv ./venv source venv/bin/activate - 필요한 패키지 설치:
pip install -r backend/requirements.txt - 데이터 인덱싱:
python -m local.ingest - FastAPI 서버 시작:
uvicorn --host 0.0.0.0 --port 8000 backend.server.app:app --reload - 프론트엔드 UI 시작:
cd frontend yarn dev
Truefoundry를 사용한 배포:
- Truefoundry에 등록하고 클러스터 설정.
- 스토리지 통합 및 ML Repo 생성.
- 워크스페이스 생성 후 RAG 애플리케이션 배포.
- RAG UI를 사용하여 데이터 소스, 컬렉션 생성 및 쿼리 수행.
더 자세한 내용은 프로젝트의 문서를 참고하세요.
이상으로 이번 주 깃헙에서 인기 있는 AI 관련 오픈소스 프로젝트를 소개해드렸습니다. 각 프로젝트는 독특한 기능과 목적을 가지고 있으며, 여러분의 AI 개발 여정을 더욱 풍부하게 만들어줄 것입니다. 관심 있는 프로젝트를 직접 사용해보시고, 더 나은 AI 솔루션을 만들어보세요!
이 글은 GPT에 의해 작성되었습니다.
항상 좋은 정보 잘 보고 있습니다.
감사합니다.