Introduction

Build humans and workflows to automate intelligent work.Build

What is Bitca?

Bitca is a framework for building multi-modal humansand workflows.

  • Build humanswith memory, knowledge, tools and reasoning.

  • Build teams of humans that can work together to solve problems.

  • Interact with your humansand workflows using a beautiful Human UI.

Key Features

  • Simple & Elegant

  • Powerful & Flexible

  • Multi-Modal by default

  • Multi-Human orchestration

  • A beautiful Human UI to chat with your humans

  • Humans RAG built-in

  • Structured outputs

  • Reasoning built-in

  • Monitoring & Debugging built-in

Install

// pip install -U bitca

Simple & Elegant

Bitca Humans are simple and elegant, resulting in minimal, beautiful code.

For example, you can create a web search human in 10 lines of code.

Setup

1

Setup your virtual environment

MacWindows

python3 -m venv aienv
aienv/scripts/activate

2

Install libraries

MacWindows

pip install -U bitca openai duckduckgo-search

3

Export your OpenAI key

Bitca works with most model providers but for these examples let’s use OpenAI.

MacWindows

setx OPENAI_API_KEY sk-***

You can get an API key from here.

4

Run the human

python web_search.py

Powerful & Flexible

Bitca humans can use multiple tools and follow instructions to achieve complex tasks.

For example, you can create a finance human with tools to query financial data.

1

Create a finance human

finance_human.py

from bitca.human import Humans 
from bitca.model.openai import OpenAIChat
from bitca.tools.yfinance import YFinanceTools

finance_human = Human(
    name="Finance Agent",
    model=OpenAIChat(id="gpt-4o"),
    tools=[YFinanceTools(stock_price=True, analyst_recommendations=True, company_info=True, company_news=True)],
    instructions=["Use tables to display data"],
    show_tool_calls=True,
    markdown=True,
)
finance_human.print_response("Summarize analyst recommendations for NVDA", stream=True)

2

Run the human

Install libraries

pip install yfinance

Run the human

python finance_human.py

Multi-Modal by default

Bitca humans support text, images, audio and video.

For example, you can create an image human that can understand images and make tool calls as needed

1

Create an image human

image_human.py

from bitca.human import Human
from bitca.model.openai import OpenAIChat
from bitca.tools.duckduckgo import DuckDuckGo

human= Human(
    model=OpenAIChat(id="gpt-4o"),
    tools=[DuckDuckGo()],
    markdown=True,
)

human.print_response(
    "Tell me about this image and give me the latest news about it.",
    images=["https://upload.wikimedia.org/wikipedia/commons/b/bf/Krakow_-_Kosciol_Mariacki.jpg"],
    stream=True,
)

2

Run the human

python image_human.py

Multi-Human orchestration

Bitca humans can work together as a team to achieve complex tasks.

1

Create an human team

human_team.py

from bitca.human import Human
from bitca.model.openai import OpenAIChat
from bitca.tools.duckduckgo import DuckDuckGo
from bitca.tools.yfinance import YFinanceTools

web_human = Human(
    name="Web Human",
    role="Search the web for information",
    model=OpenAIChat(id="gpt-4o"),
    tools=[DuckDuckGo()],
    instructions=["Always include sources"],
    show_tool_calls=True,
    markdown=True,
)

finance_human = Human(
    name="Finance Human",
    role="Get financial data",
    model=OpenAIChat(id="gpt-4o"),
    tools=[YFinanceTools(stock_price=True, analyst_recommendations=True, company_info=True)],
    instructions=["Use tables to display data"],
    show_tool_calls=True,
    markdown=True,
)

human_team = Human(
    team=[web_human, finance_human],
    instructions=["Always include sources", "Use tables to display data"],
    show_tool_calls=True,
    markdown=True,
)

human_team.print_response("Summarize analyst recommendations and share the latest news for NVDA", stream=True)

2

Run the human team

Run the human team

python human_team.py

Continue reading

Last updated