griptape-ai/griptape
요약
Griptape는 생성형 AI 애플리케이션 개발을 단순화하기 위해 설계된 Python 프레임워크입니다. LLM, RAG, 에이전트 구축을 위한 직관적인 추상화 계층을 제공하며, 시각적 도구인 Griptape Nodes를 통해 노코드 경험도 지원합니다.
핵심 포인트
- 에이전트, 파이프라인, 워크플로를 통해 복잡한 AI 태스크를 구조화할 수 있습니다.
- 대화, 태스크, 메타 메모리 시스템을 통해 LLM의 문맥 유지 및 데이터 관리가 가능합니다.
- 다양한 드라이버(Prompt, Embedding, Vector Store 등)를 통해 외부 서비스 및 리소스와의 상호작용을 유연하게 관리합니다.
- 비즈니스 로직의 변경을 최소화하면서 제공업체를 교체할 수 있는 높은 확장성을 제공합니다.
Griptape는 생성형 AI (genAI) 애플리케이션 개발을 단순화하기 위해 설계된 Python 프레임워크입니다. 대규모 언어 모델 (LLMs), 검색 증강 생성 (RAG) 및 기타 다양한 분야를 다룰 수 있는 일련의 직관적이고 유연한 추상화 계층을 제공합니다.
노코드 (no-code) 경험을 찾고 계신가요? AI 워크플로 (workflows)를 구축하고 실행할 수 있는 시각적 데스크톱 애플리케이션인 Griptape Nodes를 확인해 보세요.
- 🤖
**에이전트 (Agents)**는 에이전트 특유의 동작을 수행하도록 구성된 단일 태스크 (Task)로 구성됩니다. - 🔄
**파이프라인 (Pipelines)**은 하나의 태스크 (Task) 출력이 다음 태스크로 흐를 수 있도록 태스크 (Task) 시퀀스를 구성합니다. - 🌐
**워크플로 (Workflows)**는 태스크 (Tasks)가 병렬로 작동하도록 구성합니다.
태스크 (Tasks)는 구조 (Structures) 내의 핵심 빌딩 블록이며, 엔진 (Engines), 도구 (Tools) 및 기타 Griptape 구성 요소와의 상호작용을 가능하게 합니다.
- 💬
**대화 메모리 (Conversation Memory)**는 LLM이 상호작용 전반에 걸쳐 정보를 유지하고 검색할 수 있게 합니다. - 🗃️
**태스크 메모리 (Task Memory)**는 크거나 민감한 태스크 (Task) 출력이 LLM으로 전송되는 프롬프트 (prompt)에 포함되지 않도록 관리합니다. - 📊
**메타 메모리 (Meta Memory)**는 LLM에 추가적인 메타데이터 (metadata)를 전달하여 상호작용의 문맥 (context)과 관련성을 향상시킵니다.
드라이버 (Drivers)는 Griptape에서 외부 리소스 및 서비스와의 상호작용을 용이하게 합니다. 드라이버 (Drivers)를 사용하면 비즈니스 로직의 변경을 최소화하면서 기능과 제공업체를 교체할 수 있습니다.
-
🗣️
프롬프트 드라이버 (Prompt Drivers): LLM과의 텍스트 및 이미지 상호작용을 관리합니다. - 🤖
어시스턴트 드라이버 (Assistant Drivers): 다양한 "어시스턴트" 서비스와의 상호작용을 가능하게 합니다. - 📜
규칙 세트 드라이버 (Ruleset Drivers): 외부 소스에서 규칙 세트 (rulesets)를 로드하고 적용합니다. - 🧠
대화 메모리 드라이버 (Conversation Memory Drivers): 대화 데이터를 저장하고 검색합니다. - 📡
이벤트 리스너 드라이버 (Event Listener Drivers): 프레임워크 이벤트를 외부 서비스로 전달합니다. - 🏗️
구조 실행 드라이버 (Structure Run Drivers): 구조 (structures)를 로컬 또는 클라우드에서 실행합니다. -
🔢
Embedding Drivers (임베딩 드라이버): 텍스트 입력으로부터 벡터 임베딩 (vector embeddings)을 생성합니다. - 🔀
Rerank Drivers (리랭크 드라이버): 관련성을 개선하기 위해 검색 결과의 순위를 재조정 (Rerank)합니다. - 💾
Vector Store Drivers (벡터 스토어 드라이버): 임베딩의 저장 및 검색을 관리합니다. - 🗂️
File Manager Drivers (파일 매니저 드라이버): 로컬 및 원격 저장소의 파일 작업을 처리합니다. - 💼
SQL Drivers (SQL 드라이버): SQL 데이터베이스와 상호작용합니다. -
🎨
Image Generation Drivers (이미지 생성 드라이버): 텍스트 설명을 기반으로 이미지를 생성합니다. - 🗣️
Text to Speech Drivers (텍스트 음성 변환 드라이버): 텍스트를 음성으로 변환합니다. - 🎙️
Audio Transcription Drivers (오디오 전사 드라이버): 오디오를 텍스트로 변환합니다. -
🔍
Web Search Drivers (웹 검색 드라이버): 정보를 찾기 위해 웹을 검색합니다. - 🌐
Web Scraper Drivers (웹 스크래퍼 드라이버): 웹 페이지에서 데이터를 추출합니다. -
📈
Observability Drivers (관측 가능성 드라이버): 트레이스 (trace) 및 이벤트 데이터를 관측 가능성 (observability) 플랫폼으로 전송합니다.
도구 (Tools)는 LLM이 데이터 및 서비스와 상호작용할 수 있는 기능을 제공합니다. Griptape는 다양한 내장 도구 (Tools)를 포함하고 있으며, 사용자 정의 도구 (custom Tools)를 쉽게 만들 수 있도록 지원합니다.
엔진 (Engines)은 드라이버 (Drivers)를 래핑 (wrap)하여 특정 사용 사례에 특화된 기능을 제공합니다:
-
📊
**RAG Engine (RAG 엔진)**은 모듈형 검색 증강 생성 (Retrieval Augmented Generation, RAG) 파이프라인을 구현하기 위한 추상화 계층입니다. - 🛠️
**Extraction Engine (추출 엔진)**은 비정형 텍스트에서 JSON 또는 CSV 데이터를 추출합니다. - 📝
**Summary Engine (요약 엔진)**은 텍스트 콘텐츠로부터 요약본을 생성합니다. - ✅
**Eval Engine (평가 엔진)**은 생성된 텍스트의 품질을 평가하고 점수를 매깁니다. -
📐
**Rulesets (룰셋)**은 최소한의 프롬프트 엔지니어링 (prompt engineering)으로 LLM의 동작을 제어합니다. - 🔄
**Loaders (로더)**는 다양한 소스로부터 데이터를 로드합니다. - 🏺
**Artifacts (아티팩트)**는 Griptape 구성 요소 간에 다양한 유형의 데이터를 전달할 수 있게 합니다. - ✂️
**Chunkers (청커)**는 다양한 텍스트 유형에 맞춰 텍스트를 관리 가능한 조각으로 분할합니다. - 🔢
**Tokenizers (토크나이저)**는 LLM의 토큰 제한을 초과하지 않도록 텍스트의 토큰 (tokens) 수를 계산합니다.
설치 및 사용법에 관한 정보는 문서를 참조해 주세요.
무료 온라인 강의는 Griptape Trade School을 확인해 보세요.
다음은 griptape의 최소 예제입니다:
from griptape.drivers.prompt.openai import OpenAiChatPromptDriver
from griptape.rules import Rule
from griptape.tasks import PromptTask
...
킥플립 (kickflip)을 하려면, 먼저 앞발을 보드 중앙 근처에 약간 비스듬하게 위치시키고 뒷발은 테일 (tail) 위에 올리세요.
뒷발로 테일을 아래로 팝 (pop) 하는 동시에, 앞발로 보드의 가장자리를 튕겨서 보드가 회전하게 만듭니다.
점프하며 몸을 보드 중앙에 유지한 다음, 발로 보드를 잡아 부드럽게 착지하세요. 연습과 인내심이 핵심입니다!
다음은 griptape를 사용하여 오픈 소스 프로젝트를 조사하는 간결한 예시입니다:
from griptape.drivers.prompt.openai_chat_prompt_driver import OpenAiChatPromptDriver
from griptape.drivers.web_search.duck_duck_go import DuckDuckGoWebSearchDriver
from griptape.rules import Rule, Ruleset
...
출력: 언급된 오픈 소스 프로젝트에 대한 상세 요약은 다음과 같습니다:
1. **Griptape** 🛠️:
- Griptape는 AI 기반 애플리케이션 제작을 위해 설계된 모듈형 Python 프레임워크입니다. 보안 연결에 집중하며
...
graph TD;
griptape-->summary;
langchain-->summary;
...
Griptape는 유의적 버전 관리 (Semantic Versioning)를 사용합니다.
Griptape에 기여하는 것을 고려해 주셔서 감사합니다! 시작하기 전에 저희의 기여 가이드라인 (Contributing Guidelines)을 검토해 주세요.
Griptape는 Apache 2.0 라이선스 (Apache 2.0 License) 하에 제공됩니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Claude Ecosystem의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기