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-1.0.1.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-1.0.1-py3-none-any.whl (42.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: py_aidol-1.0.1.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-1.0.1.tar.gz
Algorithm Hash digest
SHA256 e33dae042234d58b6174985f890e0c1f27287c5f382640a0d4e864d155b76e54
MD5 3136824d9891e701e16cee967d40c9ef
BLAKE2b-256 9bc01305135f2a7d17f5b1c19e4bec9d048c80e08e19f98440a2e1c700e32491

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: py_aidol-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 42.0 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-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1cc68d785bf03c1cc0904aa7bd5eeb1d1b1f5dd0f1299ecdf218816d939175a6
MD5 3b73cccc8f8f661ef16d3eacfd7e7706
BLAKE2b-256 bd3cacc07fe46e85bb9a5d5192d0eed8d6d2954c2d9148c6c2f5fe5a9463b64b

See more details on using hashes here.

Provenance

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