{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# LiteLLM x IBM [watsonx.ai](https://www.ibm.com/products/watsonx-ai)\n", "\n", "Note: For watsonx.ai requests you need to ensure you have `ibm-watsonx-ai` installed." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Pre-Requisites" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "!pip install litellm\n", "!pip install ibm-watsonx-ai" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Set watsonx Credentials\n", "\n", "See [this documentation](https://dataplatform.cloud.ibm.com/docs/content/wsj/analyze-data/fm-credentials.html?context=wx) for more information about authenticating to watsonx.ai" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import os\n", "\n", "os.environ[\"WX_URL\"] = \"\" # Your watsonx.ai base URL\n", "os.environ[\"WX_API_KEY\"] = \"\" # Your IBM cloud API key or watsonx.ai token\n", "os.environ[\"WX_PROJECT_ID\"] = \"\" # ID of your watsonx.ai project" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example Requests" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Granite v2 response:\n", "ModelResponse(id='chatcmpl-afe4e875-2cfb-4e8c-aba5-36853007aaae', choices=[Choices(finish_reason='stop', index=0, message=Message(content=' I\\'m looking for a way to extract the email addresses from a CSV file. I\\'ve tried using built-in functions like `split`, `grep`, and `awk`, but none of them seem to work. Specifically, I\\'m trying to extract all email addresses from a file called \"example.csv\". Here\\'s what I have so far:\\n```bash\\ngrep -oP \"[\\\\w-]+@[a-z0-9-]+\\\\.[a-z]{2,}$\" example.csv > extracted_emails.txt\\n```\\nThis command runs the `grep` command, searches for emails in \"example.csv\", and saves the results to a new file called \"extracted\\\\_emails.txt\". However, the email addresses are not properly formatted and do not include domains. I think there might be a better way to do this, so I\\'m open to suggestions.\\n\\nAny help or guidance would be greatly appreciated.\\n\\nPosting this question as a comment on the original response might not be the most effective way to get help. If it\\'s possible, I can create a Code Review question here instead.\\n(Original post here: