Skip to main content

Create and chat with your own AI idol group

Project description

AIdol Backend

AI 아이돌 그룹 생성 및 채팅 Python 패키지

주요 기능

  • AI 아이돌 그룹/멤버 CRUD
  • Google Gemini 이미지 생성 (엠블럼, 프로필)
  • 텍스트 채팅 (페르소나 기반 응답)
  • Buppy 통합 Adapter 패턴

설치

cd backend
poetry install
poetry run uvicorn main:app --reload

API 문서:

사용법

FastAPI 통합

from aidol.api.aidol import AIdolRouter
from aidol.api.companion import CompanionRouter
from aidol.factories import AIdolRepositoryFactory, CompanionRepositoryFactory

# AIdol 라우터
aidol_router = AIdolRouter(
    repository_factory=AIdolRepositoryFactory(),
    google_settings=google_settings,
    image_storage=image_storage,
)

# Companion 라우터
companion_router = CompanionRouter(
    repository_factory=CompanionRepositoryFactory(),
)

app.include_router(aidol_router.router, prefix="/api/aidol")
app.include_router(companion_router.router, prefix="/api/aidol")

개발

poetry install
make lint
make type-check
make unit-test
make format

환경 변수

이미지 생성 인증 (선택, ADC 지원)

변수 설명
GOOGLE_API_KEY Google API 키 (Google AI API)
GOOGLE_CLOUD_PROJECT GCP 프로젝트 ID (Vertex AI)

인증 방법:

Option 1: Google AI API (API Key)

export GOOGLE_API_KEY=your-api-key

Option 2: Vertex AI (ADC)

export GOOGLE_CLOUD_PROJECT=your-project-id
gcloud auth application-default login  # 로컬 개발

참고: Vertex AI 사용 시 location=global이 하드코딩되어 있습니다 (Gemini 이미지 생성 모델 요구사항).

선택

변수 기본값 설명
AIDOL_OPENAI_MODEL gpt-4o-mini 채팅 응답 LLM 모델

참고: 데이터베이스, 모델 등 추가 설정은 기본값으로 로컬 개발 가능합니다. 변경이 필요한 경우 aidol/ 내 Settings 클래스를 참고하세요.

의존성

  • aioia-core (공통 인프라)
  • FastAPI, SQLAlchemy, Pydantic
  • Google Generative AI (이미지 생성)
  • OpenAI (채팅)
  • Pillow (이미지 처리)

라이선스

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_aidol-2.3.0.tar.gz (31.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_aidol-2.3.0-py3-none-any.whl (53.5 kB view details)

Uploaded Python 3

File details

Details for the file py_aidol-2.3.0.tar.gz.

File metadata

  • Download URL: py_aidol-2.3.0.tar.gz
  • Upload date:
  • Size: 31.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for py_aidol-2.3.0.tar.gz
Algorithm Hash digest
SHA256 6ec2052cd7499ad8549dc498df35f02831d32c37818d46140fa6e35b0c2b7ee8
MD5 21f5d078fab454de01872470d74a8912
BLAKE2b-256 8adb45ee3790034dab8e86e3fd28bbccd80f8c8c15c9fc952638c126db29470c

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_aidol-2.3.0.tar.gz:

Publisher: publish-backend.yml on algorima/aidol

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py_aidol-2.3.0-py3-none-any.whl.

File metadata

  • Download URL: py_aidol-2.3.0-py3-none-any.whl
  • Upload date:
  • Size: 53.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for py_aidol-2.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58a32e948f07bfeacf4ec4f188b6b6ee305366d6d6697468f0c7915bd5edf7cd
MD5 298fe4eb479c6a86353c7a197929c23c
BLAKE2b-256 59b155d903c304d58b764994accb04683d90b6a64ff44306d70a53c021694172

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_aidol-2.3.0-py3-none-any.whl:

Publisher: publish-backend.yml on algorima/aidol

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page