Skip to main content

Text-to-avatar generates visual UI attributes from natural language descriptions of avatars.

Project description

text_to_avatar

PyPI version License: MIT Downloads LinkedIn

Convert text descriptions into structured UI avatar attributes with consistency and coherence.

Overview

text_to_avatar is a Python package that transforms natural language descriptions of avatars (e.g., "a friendly robot with blue eyes and a metallic body") into structured, consistent UI avatar attributes. It leverages an LLM to interpret input and outputs a standardized format containing elements like color, style, features, and accessories, ensuring visual coherence across different requests.

No complex 3D modeling tools or workflows are required—just a simple text input!


🚀 Installation

pip install text_to_avatar

🔧 Usage

Basic Usage (Default LLM: ChatLLM7)

from text_to_avatar import text_to_avatar

response = text_to_avatar(user_input="a cute fox with red fur and a green scarf")
print(response)

Custom LLM Integration

You can replace the default ChatLLM7 with any LangChain-compatible LLM (e.g., OpenAI, Anthropic, Google Generative AI).

Example with OpenAI:

from langchain_openai import ChatOpenAI
from text_to_avatar import text_to_avatar

llm = ChatOpenAI()
response = text_to_avatar(user_input="a cyberpunk samurai with neon armor", llm=llm)
print(response)

Example with Anthropic:

from langchain_anthropic import ChatAnthropic
from text_to_avatar import text_to_avatar

llm = ChatAnthropic()
response = text_to_avatar(user_input="a mystical elf with glowing runes", llm=llm)
print(response)

Example with Google Generative AI:

from langchain_google_genai import ChatGoogleGenerativeAI
from text_to_avatar import text_to_avatar

llm = ChatGoogleGenerativeAI()
response = text_to_avatar(user_input="a futuristic astronaut in a silver suit", llm=llm)
print(response)

🔑 API Key & Rate Limits

  • Default LLM: Uses ChatLLM7 (from langchain_llm7).
  • Free Tier: Sufficient for most use cases (check LLM7's rate limits).
  • Custom API Key:
    • Set via environment variable:
      export LLM7_API_KEY="your_api_key_here"
      
    • Or pass directly:
      from text_to_avatar import text_to_avatar
      response = text_to_avatar(user_input="a dragon with fiery scales", api_key="your_api_key")
      

Get a free API key at LLM7 Token.


📝 Input Parameters

Parameter Type Description
user_input str Text description of the desired avatar (e.g., "a friendly robot with blue eyes").
api_key Optional[str] LLM7 API key (if not provided, falls back to LLM7_API_KEY env var).
llm Optional[BaseChatModel] Custom LangChain LLM (e.g., ChatOpenAI, ChatAnthropic). Defaults to ChatLLM7.

📌 Output Format

The function returns a structured list of avatar attributes (e.g., colors, styles, features) in a consistent format, ready for UI rendering.

Example output:

[
    {"color": "blue", "type": "eyes"},
    {"style": "metallic", "type": "body"},
    {"accessory": "helmet", "material": "chrome"}
]

🔄 Customization

  • Modify the regex pattern in .prompts.py to adjust output structure.
  • Extend the system prompt for advanced use cases.

📜 License

MIT License (see LICENSE).


📢 Support & Issues

Report bugs or request features at: 🔗 GitHub Issues


👤 Author

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

text_to_avatar-2025.12.21234918.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

text_to_avatar-2025.12.21234918-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file text_to_avatar-2025.12.21234918.tar.gz.

File metadata

File hashes

Hashes for text_to_avatar-2025.12.21234918.tar.gz
Algorithm Hash digest
SHA256 d58daa3bcd99c694a79adecdebe76b7a2a6a6f06b0c98c3596aaf8a0da8fb0e6
MD5 786083d2a358f1ac893143c3e4e277ed
BLAKE2b-256 4ef449a4f076cdaa0bb955f42e321f77020e3f8af55d1338a235642762f42294

See more details on using hashes here.

File details

Details for the file text_to_avatar-2025.12.21234918-py3-none-any.whl.

File metadata

File hashes

Hashes for text_to_avatar-2025.12.21234918-py3-none-any.whl
Algorithm Hash digest
SHA256 b52d4f537195a35cf5a6c98b3389798a51845b74d20427184963369a924f3fb9
MD5 6e736c28e228ca684ea319fce954ec69
BLAKE2b-256 b0a4533d32c1846d3f2a90738d9dfe9311987c9d77dd5392d41b246ecf187d24

See more details on using hashes here.

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