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-0.5.0.tar.gz (26.4 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-0.5.0-py3-none-any.whl (41.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for py_aidol-0.5.0.tar.gz
Algorithm Hash digest
SHA256 cc62526ae68c80df556ad07d1b66251c70039c4c94a36e02200be243f1a6d7cf
MD5 cb4de668e3dc515c46a5e66dc1f711bb
BLAKE2b-256 caa2464a816a2102191541da07e134c7f95ae1d81018cd8a5a6f17319af1c53a

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_aidol-0.5.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-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: py_aidol-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 41.6 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-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 118f447e9dd59322bed6c58504ce48a71518fb3da97ab6561c086b5ff3527cbc
MD5 29e4b435ddaaa65a1dfa66761e799b2b
BLAKE2b-256 321180cfac7442a419b96e3961fab292b7794368b4d85a9ed321d3ba203209c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_aidol-0.5.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