Giter VIP home page Giter VIP logo

ai-functions's Introduction

AI Functions ๐Ÿค–๐Ÿ‘ฉโ€๐Ÿ’ป

Example:

function = "def fake_people(n: int) -> list[dict]:"
args = ["4"]
description_string = """Generates n examples of fake data representing people, each with a name and an age."""

result = ai_functions.ai_function(function_string, args, description_string, model)

""" Output: [
  {"name": "John Doe", "age": 35},
  {"name": "Jane Smith", "age": 28},
  {"name": "Alice Johnson", "age": 42},
  {"name": "Bob Brown", "age": 23}
]"""

An easy-to-use implementation of AI functions using OpenAI's GPT-4 (or any other model version) to perform various tasks. This project is heavily inspired by Ask Marvin.

Installation

  1. Clone the repository:
git clone https://github.com/YourUsername/SuperSimpleAIFunctions.git
  1. Install the required dependencies:
pip install -r requirements.txt
  1. Obtain an OpenAI API key and store it in a keys.py file in the same directory as the scripts or set it as an environment variable.

Usage

ai_functions.py

ai_functions.py contains the following function:

def ai_function(function, args, description, model="gpt-4"):

The ai_function takes the following parameters:

  • function: A string describing the function signature.
  • args: A list of arguments for the function.
  • description: A string describing the purpose of the function.
  • model: (Optional) A string specifying the GPT model to use. Default is 'gpt-4'.

Example usage:

import ai_functions

function = "def add(a: int, b: int) -> int:"
args = ["5", "7"]
description = "Adds two integers."

result = ai_functions.ai_function(function, args, description)
print(result)  # Output: 12

Limitations

The table below shows the success rate of the AI functions with different GPT models:

Description GPT-4 Result GPT-3.5-turbo Result Reason
Generate fake people PASSED FAILED Incorrect response format
Generate Random Password FAILED FAILED Incorrect response format
Calculate area of triangle FAILED FAILED Incorrect float value (GPT-4), Incorrect response format (GPT-3.5-turbo)
Calculate the nth prime number PASSED PASSED N/A
Encrypt text PASSED PASSED N/A
Find missing numbers PASSED PASSED N/A

It's important to note that AI Functions are not suited for certain tasks, particularly those involving mathematical calculations and precision. As observed in the case of calculating the area of a triangle and finding the nth prime number, GPT models can struggle with providing accurate results. The limitations of GPT models in such cases are mainly due to their inherent inability to perform precise arithmetic and the ambiguity in understanding user inputs.

In conclusion, while AI Functions can be helpful in various scenarios, they may not be the optimal choice for tasks requiring mathematical accuracy or specific domain knowledge. For such use-cases, utilizing traditional algorithms and libraries would yield better results.

test_ai_functions.py

test_ai_functions.py contains test cases for the ai_function. To run the tests, execute the script with Python:

python test_ai_functions.py

The test script will output the results of each test case and provide a success rate.

Contributing

Contributions are welcome! If you would like to add more test cases or improve the existing code, please feel free to submit a pull request.

ai-functions's People

Contributors

torantulino avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.