Skip to main content

IBM Watsonx API wrapper package for calling text generation and embedding requests

Project description

IBM Watsonx API wrapper package for calling text generation and embedding requests

Python


Usage / Examples

example_connector_obj = WatsonxConnector(base_url=cp4d_url,
                                         user_name=user_name,
                                         api_key=api_key,
                                         model_id=model_id,
                                         project_id=project_id
                                         )

for model, model_type in example_connector_obj.get_available_models().items():
    print(f"{model}: {model_type}")

example_connector_obj.set_model_params(temperature=0.7, max_new_tokens=800)
print(example_connector_obj.get_model_params())

print(example_connector_obj.generate_text("Write an example python unittest"))

example_connector_obj.set_model_id(model_id="ibm/slate-125m-english-rtrvr")
for embed in example_connector_obj.generate_embedding(["something", "something else"]):
    print(embed)

Example output from above:

codellama/codellama-34b-instruct-hf: text_generation ibm/granite-13b-chat-v2: text_generation ibm/slate-125m-english-rtrvr: embedding ibm/slate-30m-english-rtrvr: embedding meta-llama/llama-3-70b-instruct: text_generation

{'decoding_method': 'sample', 'max_new_tokens': 800, 'temperature': 0.7, 'top_k': 20, 'top_p': 0.9, 'repetition_penalty': 1.1}

import unittest
from mymodule import my_function

class MyTest(unittest.TestCase):

    def test_my_function(self):
        result = my_function('hello world')
        self.assertEqual(result, 'Hello World')

if __name__ == '__main__':
    unittest.main()

This is an example of a simple Python unit test using the unittest module. In this case, we define a new class called MyTest which inherits from unittest.TestCase. This allows us to use all the methods provided by the unittest.TestCase class, such as setUp() and tearDown().

Inside the test_my_function() method, we call the function we want to test (my_function) and provide it with a string argument ('hello world' in this case). We then use the assertEqual() method to check if the result of the function call matches the expected value ('Hello World' in this case).

Finally, we run the tests by calling unittest.main() in our script. This will execute all the tests defined in the current module (in this case, just the one test defined in MyTest).

In summary, this is a basic example of how to write a unit test in Python using the unittest module. Unit testing is a great way to ensure that your functions are working as intended and catching issues early in the development process.

[-0.024465775, -0.0329509, -0.00046468992, -0.017108368, ... 0.017113319, 0.01991029, -0.010878863, 0.005576967] [-0.037240397, -0.04046932, -0.03115683, -0.034350585, ... 0.020475477, 0.05027425, 0.006514402, 0.0150749]


List of available class methods:

  • set_system_prompt()
  • set_model_id()
  • set_model_params()
  • set_api_version()
  • set_project_id()
  • get_model_id()
  • get_auth_token()
  • get_model_params()
  • get_available_models()
  • check_model_type()
  • generate_text()
  • generate_embedding()
  • generate_auth_token()

License

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

watsonxconnector-0.0.2.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

WatsonxConnector-0.0.2-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file watsonxconnector-0.0.2.tar.gz.

File metadata

  • Download URL: watsonxconnector-0.0.2.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for watsonxconnector-0.0.2.tar.gz
Algorithm Hash digest
SHA256 5b43ed052a021bf2e11546b3fc71dc53c078f73f7eddc9175ac8d04e1d1f439e
MD5 dd43799ea2a66317c2caf195dfd020ec
BLAKE2b-256 ba195b28d03376e42d67fd71e0aeec441817d2ab87c9989b8e4c981185f25de1

See more details on using hashes here.

File details

Details for the file WatsonxConnector-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for WatsonxConnector-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c0521bef10d576ddda7be270b84c4f6a01e8f17a1d7fb3a0d1705dbba3178e87
MD5 6c908e59576e80f31de9448ada06575b
BLAKE2b-256 c2c5f665c96d4566edd41d80f2527c8fb21ef7e9a876f76e31d6bf90748047d9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page