activeagents/activeagent

ActiveAgent Rails framework for Agent Apps

Active Agent – Ruby on Rails를 위한 AI 우선 프레임워크

정의 – Rails 위에 에이전트 지향 계층을 추가하는 Ruby gem입니다. 에이전트는 컨트롤러처럼 취급되어 이미 알고 있는 Ruby/Rails 규칙을 사용하여 모듈식이고 재사용 가능한 AI 기반 구성 요소를 작성할 수 있습니다.

중요성 – 기존 웹 개발과 생성형 AI 사이의 격차를 메웁니다. 프롬프트, 도구 호출, 컨텍스트 처리를 일급 Rails 객체로 변환함으로써 개발자는 Rails 생태계를 벗어나지 않고도 LLM 기반 기능(채팅, 추출, 번역 등)을 임베드할 수 있습니다.


빠른 시작 (README에서)

  1. gem 추가
    bundle add activeagent   # 핵심 프레임워크
    # 하나 이상의 LLM 공급자 선택
    bundle add openai        # 또는 anthropic, ollama, deepseek, ruby_llm …
    
  2. 설치 프로그램 실행 – 구성 파일과 기본 에이전트 클래스를 생성합니다:
    rails generate active_agent:install
    
  3. 에이전트 정의
    class ApplicationAgent < ActiveAgent::Base
      generate_with :openai, model: "gpt-4o-mini"
    end
    
    response = ApplicationAgent.prompt(message: "Hello, world!").generate_now
    puts response.message   # => "Hello! How can I help you today?"
    
  4. 사용자 정의 에이전트 생성
    rails generate active_agent:agent TravelAgent search book confirm
    
    그런 다음 prompt를 호출하는 작업(search, book, confirm)을 구현합니다.

핵심 기능 (README에 나열된 대로)

  • 에이전트 지향 프로그래밍 – 에이전트는 Rails 컨트롤러처럼 동작하여 MVC에 자연스럽게 맞습니다.
  • 다중 공급자 지원 – OpenAI, Anthropic, Ollama, DeepSeek, RubyLLM 및 OpenAI 호환 API.
  • 액션 기반 설계 – 에이전트의 각 공개 메서드는 호출하고 추적할 수 있는 액션입니다.
  • 프롬프트 템플릿 – 텍스트, JSON 또는 HTML 프롬프트용 ERB 뷰 템플릿.
  • 스트리밍 – ActionCable을 통한 실시간 응답.
  • 도구/함수 호출 – 에이전트가 외부 서비스(예: 고양이 이미지 가져오기)를 호출하고 결과를 통합할 수 있습니다.
  • 위임 – 예산/시간 초과 계약과 함께 하위 작업을 다른 에이전트에 넘깁니다.
  • 컨텍스트 관리 – 대화 기록을 자동으로 처리합니다.
  • 구조화된 출력 – 예측 가능한 응답을 위한 JSON 스키마 검증.
  • 텔레메트리 및 대시보드 – 선택적 actionagent gem은 추적, 토큰 사용량, 비용 추정 및 /activeagents의 UI를 갖춘 Rails 엔진을 제공합니다.

README의 예제 사용 사례

사용 사례 코드 스니펫 기능
데이터 추출 DataExtractionAgent.with(image_path: …).parse_content.generate_now 이미지, PDF 또는 원시 텍스트에서 구조화된 데이터를 추출합니다.
번역 TranslationAgent.with(message: "Hi, I'm Justin", locale: "japanese").translate.generate_now 문자열을 다른 언어로 번역합니다.
도구 사용 SupportAgent.prompt(message: "Show me a cat").generate_now 에이전트가 도구(예: 이미지 검색)를 호출하고 결과를 반환합니다.
위임 SummarizerAgent / ResearchAgent 예제 참조 – 연구 에이전트가 비용/지연 예산으로 하위 에이전트에 요약을 위임합니다.

설치 및 생태계

  • 핵심 gem – activeagent (프레임워크, 공급자, 생성, 텔레메트리 포함).
  • 대시보드 gem – actionagent (모니터링용 마운트 가능한 엔진, 자체 ActiveRecord 모델에서 실행, 선택 사항).
  • 공급자 gem – 필요한 LLM 클라이언트(openai, anthropic 등)를 설치하고 config/active_agent.yml에서 구성합니다.
  • Ruby 버전 – ≥ 3.1; Rails 7.2, 8.0, 8.1 지원.

문서 및 커뮤니티

  • 공식 문서: https://docs.activeagents.ai
  • 시작 가이드, API 참조 및 예제 에이전트가 모두 거기에 호스팅됩니다.
  • 일반적인 GitHub 워크플로(CONTRIBUTING.MD 참조)를 통해 기여를 환영합니다.
  • MIT 라이선스.

TL;DR

Active Agent를 사용하면 Rails 개발자는 LLM 기반 기능을 일급 에이전트로 취급하고 친숙한 생성기, 컨트롤러 스타일 액션, 관찰 가능성을 위한 내장 대시보드를 사용할 수 있습니다. gem을 설치하고, 공급자를 선택하고, 에이전트를 생성하면 표준 Rails 앱 내에서 프롬프트, 스트리밍, 도구 호출, 위임을 모두 시작할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트