Skip to main content

Paper - Pytorch

Project description

Swarms Tools

Join our Discord Subscribe on YouTube Connect on LinkedIn Follow on X.com

Welcome to Swarms Tools, the ultimate package for integrating cutting-edge APIs into Python functions with seamless multi-agent system compatibility. Designed for enterprises at the forefront of innovation, Swarms Tools is your key to simplifying complexity and unlocking operational excellence.


๐Ÿš€ Features

  • Unified API Integration: Ready-to-use Python functions for financial data, social media, IoT, and more.
  • Enterprise-Grade Design: Comprehensive type hints, structured outputs, and robust documentation.
  • Agent-Ready Framework: Optimized for seamless integration into Swarms' multi-agent orchestration systems.
  • Expandable Architecture: Easily extend functionality with a standardized schema for new tools.

๐Ÿ”ง Installation

pip3 install -U swarms-tools

๐Ÿ“‚ Directory Structure

swarms-tools/
โ”œโ”€โ”€ swarms_tools/
โ”‚   โ”œโ”€โ”€ finance/
โ”‚   โ”‚   โ”œโ”€โ”€ htx_tool.py
โ”‚   โ”‚   โ”œโ”€โ”€ eodh_api.py
โ”‚   โ”‚   โ””โ”€โ”€ coingecko_tool.py
โ”‚   โ”œโ”€โ”€ social_media/
โ”‚   โ”‚   โ”œโ”€โ”€ telegram_tool.py
โ”‚   โ”œโ”€โ”€ utilities/
โ”‚   โ”‚   โ””โ”€โ”€ logging.py
โ”œโ”€โ”€ tests/
โ”‚   โ”œโ”€โ”€ test_financial_data.py
โ”‚   โ””โ”€โ”€ test_social_media.py
โ””โ”€โ”€ README.md

๐Ÿ’ผ Use Cases

Finance

Explore our diverse range of financial tools, designed to streamline your operations. If you need a tool not listed, feel free to submit an issue or accelerate integration by contributing a pull request with your tool of choice.

Tool Name Function Description
fetch_stock_news fetch_stock_news Fetches the latest stock news and updates.
fetch_htx_data fetch_htx_data Retrieves financial data from the HTX platform.
yahoo_finance_api yahoo_finance_api Fetches comprehensive stock data from Yahoo Finance, including prices and trends.
coin_gecko_coin_api coin_gecko_coin_api Fetches cryptocurrency data from CoinGecko, including market and price information.
helius_api_tool helius_api_tool Retrieves blockchain account, transaction, or token data using the Helius API.
okx_api_tool okx_api_tool Fetches detailed cryptocurrency data for coins from the OKX exchange.

Financial Data Retrieval

Enable precise and actionable financial insights:

Example 1: Fetch Historical Data

from swarms_tools import fetch_htx_data

# Fetch historical trading data for "Swarms Corporation"
response = fetch_htx_data("swarms")
print(response)

Example 2: Stock News Analysis

from swarms_tools import fetch_stock_news

# Retrieve latest stock news for Apple
news = fetch_stock_news("AAPL")
print(news)

Example 3: Cryptocurrency Metrics

from swarms_tools import coin_gecko_coin_api

# Fetch live data for Bitcoin
crypto_data = coin_gecko_coin_api("bitcoin")
print(crypto_data)

Social Media Automation

Streamline communication and engagement:

Example: Telegram Bot Messaging

from swarms_tools import telegram_dm_or_tag_api

def send_alert(response: str):
    telegram_dm_or_tag_api(response)

# Send a message to a user or group
send_alert("Mission-critical update from Swarms.")

Structs

The tool chainer enables the execution of multiple tools in a sequence, allowing for the aggregation of their results in either a parallel or sequential manner.

# Example usage
from loguru import logger

from swarms_tools.structs import tool_chainer


if __name__ == "__main__":
    logger.add("tool_chainer.log", rotation="500 MB", level="INFO")

    # Example tools
    def tool1():
        return "Tool1 Result"

    def tool2():
        return "Tool2 Result"

    # def tool3():
    #     raise ValueError("Simulated error in Tool3")

    tools = [tool1, tool2]

    # Parallel execution
    parallel_results = tool_chainer(tools, parallel=True)
    print("Parallel Results:", parallel_results)

    # Sequential execution
    # sequential_results = tool_chainer(tools, parallel=False)
    # print("Sequential Results:", sequential_results)

๐Ÿงฉ Standardized Schema

Every tool in Swarms Tools adheres to a strict schema for maintainability and interoperability:

Schema Template

  1. Functionality:

    • Encapsulate API logic into a modular, reusable function.
  2. Typing:

    • Leverage Python type hints for input validation and clarity.

    Example:

    def fetch_data(symbol: str, date_range: str) -> str:
        """
        Fetch financial data for a given symbol and date range.
    
        Args:
            symbol (str): Ticker symbol of the asset.
            date_range (str): Timeframe for the data (e.g., '1d', '1m', '1y').
    
        Returns:
            dict: A dictionary containing financial metrics.
        """
        pass
    
  3. Documentation:

    • Include detailed docstrings with parameter explanations and usage examples.
  4. Output Standardization:

    • Ensure consistent outputs (e.g., strings) for easy downstream agent integration.
  5. API-Key Management:

    • All API keys must be fetched with os.getenv("YOUR_KEY")

๐Ÿ“– Documentation

Comprehensive documentation is available to guide developers and enterprises. Visit our official docs for detailed API references, usage examples, and best practices.


๐Ÿ›  Contributing

We welcome contributions from the global developer community. To contribute:

  1. Fork the Repository: Start by forking the repository.
  2. Create a Feature Branch: Use a descriptive branch name: feature/add-new-tool.
  3. Commit Your Changes: Write meaningful commit messages.
  4. Submit a Pull Request: Open a pull request for review.

๐Ÿ›ก๏ธ License

This project is licensed under the MIT License. See the LICENSE file for details.


๐ŸŒ  Join the Future

Explore the limitless possibilities of agent-based systems. Together, we can build a smarter, faster, and more interconnected world.

Visit us: Swarms Corporation
Follow us: Twitter


"The future belongs to those who dare to automate it."
โ€” The Swarms Corporation

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

swarms_tools-0.0.5.tar.gz (26.0 kB view details)

Uploaded Source

Built Distribution

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

swarms_tools-0.0.5-py3-none-any.whl (31.7 kB view details)

Uploaded Python 3

File details

Details for the file swarms_tools-0.0.5.tar.gz.

File metadata

  • Download URL: swarms_tools-0.0.5.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.8 Darwin/23.3.0

File hashes

Hashes for swarms_tools-0.0.5.tar.gz
Algorithm Hash digest
SHA256 544308325575b30f1310badba7ebcb4d20999e81c344693d697d28068b0147b7
MD5 461d2df118d204764eb55a042a58f45a
BLAKE2b-256 7277af803e5a188042b94c9270f33db1fff81321a0b69b924ff202bf4ffda448

See more details on using hashes here.

File details

Details for the file swarms_tools-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: swarms_tools-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 31.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.8 Darwin/23.3.0

File hashes

Hashes for swarms_tools-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 201c2d4427c59cfcb67e4e86b43f260f0c71d16741082f6465c3030311874e2e
MD5 4cad7c9cd7b7473cb9ff59460708f8d6
BLAKE2b-256 837c06fd6ee65f448a82258a0d0d3af15e628c717bf13609d9da8fcb30393306

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