Full Code of tanchongmin/strictjson for AI

main f38b937c9193 cached
29 files
5.6 MB
1.5M tokens
53 symbols
1 requests
Download .txt
Showing preview only (5,898K chars total). Download the full file or copy to clipboard to get everything.
Repository: tanchongmin/strictjson
Branch: main
Commit: f38b937c9193
Files: 29
Total size: 5.6 MB

Directory structure:
gitextract_xzafacu1/

├── .github/
│   └── workflows/
│       └── publish.yml
├── .gitignore
├── Experiments/
│   ├── Context-Dependent-Embeddings.ipynb
│   ├── LLM with Knowledge Graphs.ipynb
│   └── README.md
├── LICENSE
├── Pipeline Flow.ipynb
├── README.md
├── Tutorial - Multimodal Inputs.ipynb
├── Tutorial - Provider_Structured_Outputs.ipynb
├── Tutorial - parse_yaml.ipynb
├── changelog.txt
├── env.example
├── pyproject.toml
├── requirements.txt
└── strictjson/
    ├── __init__.py
    ├── helper_functions.py
    ├── legacy/
    │   ├── README.md
    │   ├── Tutorial - strict_json.ipynb
    │   ├── strict_json.py
    │   ├── strict_json_async.py
    │   └── strictjson_AMA_30Apr2024.ipynb
    ├── llm/
    │   ├── __init__.py
    │   ├── gemini.py
    │   └── openai.py
    ├── parse_yaml.py
    └── utils/
        ├── __init__.py
        ├── gemini_image_parser.py
        └── openai_image_parser.py

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/workflows/publish.yml
================================================
name: Publish to PyPI

on:
  release:
    types: [published]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - name: Set up Python
      uses: actions/setup-python@v4
      with:
        python-version: '3.8'
    
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install build twine
    
    - name: Build package
      run: python -m build
    
    - name: Publish to PyPI
      env:
        TWINE_USERNAME: __token__
        TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
      run: |
        python -m twine upload dist/*

================================================
FILE: .gitignore
================================================
.env
.ipynb_checkpoints
__pycache__
.venv
.DS_Store

================================================
FILE: Experiments/Context-Dependent-Embeddings.ipynb
================================================
{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "3a3bd0fb-7d87-4992-beb0-f622d61c467c",
   "metadata": {},
   "source": [
    "# Context-Dependent Embeddings\n",
    "\n",
    "- Modified 13 Feb 2024\n",
    "\n",
    "- This is the notebook for the experiments of the Embeddings walkthrough session\n",
    "- https://www.youtube.com/watch?v=gVZryxJRdSY\n",
    "\n",
    "- Key findings:\n",
    "    - Long chunks of similar text tends to make the model classify embeddings as more similar (Key Finding 1)\n",
    "    - Prepending Context (Approach 1) and appending context (Approach 1.5) do not solve this problem\n",
    "    - Modifying text based on context (Approach 2) appears to solve this problem\n",
    "    \n",
    "- Other findings:\n",
    "    - text-embedding-3-large and text-embedding-3-small handles negation well compared to text-embedding-ada-002"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5e2fe290-b624-48ad-9af7-0e3c141be3e6",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import os\n",
    "from openai import OpenAI\n",
    "\n",
    "#API Keys\n",
    "os.environ['OPENAI_API_KEY'] = '<YOUR OPENAI KEY HERE>'"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "41ba758f-9e53-44fe-90cc-3281089fe6d0",
   "metadata": {},
   "source": [
    "# Helper Functions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "id": "8710e422-e7cb-45a5-a080-382b551b62ac",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def chat(system_prompt: str, user_prompt: str, model: str = 'gpt-3.5-turbo', temperature: float = 0, verbose: bool = False, host: str = 'openai', **kwargs):\n",
    "    '''Performs a chat with the host's LLM model with system prompt, user prompt, model, verbose and kwargs\n",
    "    Returns the output string res\n",
    "    - system_prompt: String. Write in whatever you want the LLM to become. e.g. \"You are a \\<purpose in life\\>\"\n",
    "    - user_prompt: String. The user input. Later, when we use it as a function, this is the function input\n",
    "    - model: String. The LLM model to use for json generation\n",
    "    - verbose: Boolean (default: False). Whether or not to print out the system prompt, user prompt, GPT response\n",
    "    - host: String. The provider of the LLM\n",
    "    - **kwargs: Dict. Additional arguments for LLM chat'''\n",
    "    \n",
    "    if host == 'openai':\n",
    "        client = OpenAI()\n",
    "        response = client.chat.completions.create(\n",
    "            model=model,\n",
    "            temperature = temperature,\n",
    "            messages=[\n",
    "                {\"role\": \"system\", \"content\": system_prompt},\n",
    "                {\"role\": \"user\", \"content\": user_prompt}\n",
    "            ],\n",
    "            **kwargs\n",
    "        )\n",
    "        res = response.choices[0].message.content\n",
    "\n",
    "        if verbose:\n",
    "            print('System prompt:', system_prompt)\n",
    "            print('\\nUser prompt:', user_prompt)\n",
    "            print('\\nGPT response:', res)\n",
    "            \n",
    "    return res"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "id": "04c7ea79-8cf7-4aa0-9d55-78a302322239",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def get_embedding(text: str, model=\"text-embedding-3-large\", num_tries = 10):\n",
    "    ''' Generates a text embedding using OpenAI Embeddings \n",
    "    Gives num_tries repeat before moving on to cater for API throttling issues'''\n",
    "    text = text.replace(\"\\n\", \" \")\n",
    "    for tries in range(num_tries):\n",
    "        try:\n",
    "            client = OpenAI()\n",
    "            embedding = client.embeddings.create(input = [text], model=model).data[0].embedding\n",
    "            break    \n",
    "        except Exception as e:\n",
    "            continue\n",
    "    return embedding"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "id": "ea0f8f8b-cab5-4bf0-b4bd-c9291e19bc46",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def top_k_neighbours(query_embedding: list, embedding_list: list, k:int = 3, removedindex: list = []):\n",
    "    ''' Given a query embedding, finds out the top k embeddings that are the most relevant\n",
    "    Returns the index vector of top k embeddings, in sorted order from most relevant to least relevant'''\n",
    "    embedding_similarity = [np.dot(query_embedding, emb) for emb in embedding_list]\n",
    "    # set some indices to 0\n",
    "    np.array(embedding_similarity)[selectedindex] = 0\n",
    "    # this is if you do not care about the order in the top k\n",
    "    # return np.argpartition(embedding_similarity, -k)[-k:] \n",
    "    # this is if you care about order in the top k\n",
    "    return np.argsort(embedding_similarity)[-k:][::-1].tolist()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c6aa4b5e-a42f-4234-8984-d30b926598d8",
   "metadata": {},
   "source": [
    "# Key Finding 1: Shorter text is better for embeddings"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "id": "76cab136-8ba6-4e00-8596-17de65530849",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "model = 'text-embedding-3-large'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "id": "3d662559-151c-482b-9f49-ccf494a31c09",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9297407654620802"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "text1 = \"John went to the supermarket. Peter went to the gym. Mary went to the garden.\"\n",
    "text2 = \"John went to the airport. Peter went to the gym. Mary went to the garden.\"\n",
    "np.dot(get_embedding(text1, model), get_embedding(text2, model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "id": "233cead4-56f9-471c-8e23-fd458cd7f455",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9600638691627703"
      ]
     },
     "execution_count": 72,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "text1 = \"Peter went to the gym. Mary went to the garden. John went to the supermarket.\"\n",
    "text2 = \"Peter went to the gym. Mary went to the garden. John went to the airport.\"\n",
    "np.dot(get_embedding(text1, model), get_embedding(text2, model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "id": "758b2a14-ce9a-4d9a-870f-d046340505d9",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.6328660633894473"
      ]
     },
     "execution_count": 73,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "text1 = \"John went to the supermarket.\"\n",
    "text2 = \"John went to the airport.\"\n",
    "np.dot(get_embedding(text1, model), get_embedding(text2, model))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "01cee2d3-9ca2-4e29-bdf6-ed4240fe472d",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Context Dependent Embeddings (Baseline)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "id": "0eaaa804-4a1c-43e5-9f1f-58061ced880d",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "model = 'text-embedding-3-large'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "id": "fb7ad3a7-af76-4f45-a950-98704b0c686d",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.5897400164080131"
      ]
     },
     "execution_count": 75,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be similar\n",
    "np.dot(get_embedding('I went to the bank', model), get_embedding('I went to the river', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "id": "fd93253e-83d6-4f4e-8dfc-fa41247f4fa7",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8018812180559"
      ]
     },
     "execution_count": 76,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be similar\n",
    "np.dot(get_embedding('I went to the bank', model), get_embedding('I went to get money', model))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f1676da5-c798-4e93-a0ba-6edc33962542",
   "metadata": {},
   "source": [
    "# Context Dependent Embeddings (Approach 1) - Prepending context"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "id": "915508be-5b65-489b-9091-aff4544c2af7",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.7513987620212337"
      ]
     },
     "execution_count": 77,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be similar\n",
    "np.dot(get_embedding('Context: water. I went to the bank', model), \n",
    "       get_embedding('Context: water. I went to the river', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "id": "3935a913-b998-4e20-aa9c-9d973f22ecf1",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8789128046393934"
      ]
     },
     "execution_count": 78,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be different\n",
    "np.dot(get_embedding('Context: water. I went to the bank', model), \n",
    "       get_embedding('Context: water. I went to get money', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "id": "3a465835-5d71-433d-8825-41c01209a251",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.7817484942487075"
      ]
     },
     "execution_count": 79,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be different\n",
    "np.dot(get_embedding('Context: finance. I went to the bank', model), \n",
    "       get_embedding('Context: finance. I went to the river', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "id": "1ea2ba24-0619-46f8-8e20-3a49254942c4",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8711684911398004"
      ]
     },
     "execution_count": 80,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be similar\n",
    "np.dot(get_embedding('Context: finance. I went to the bank', model), \n",
    "       get_embedding('Context: finance. I went to get money', model))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b3a023ee-1888-4563-9aeb-45964b35ae4d",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Context Dependent Embeddings (Approach 1.5) - Appending context"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "id": "bc480678-65d6-4871-b03e-8b52acdb33a2",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8096693719142252"
      ]
     },
     "execution_count": 81,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be similar\n",
    "np.dot(get_embedding('I went to the bank. Summarise this sentence in context of water:', model), \n",
    "       get_embedding('I went to the river. Summarise this sentence in context of water:', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "id": "87ed1758-dbbb-4516-acf3-83c526f4918c",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9065902572233908"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be different\n",
    "np.dot(get_embedding('I went to the bank. Summarise this sentence in context of water:', model), \n",
    "       get_embedding('I went to get money. Summarise this sentence in context of water:', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "id": "52092f3b-7374-4f41-8097-b57fbc21e0dc",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8251738788226315"
      ]
     },
     "execution_count": 83,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be different\n",
    "np.dot(get_embedding('I went to the bank. Summarise this sentence in context of finance:', model), \n",
    "       get_embedding('I went to the river. Summarise this sentence in context of finance:', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "id": "9b3e2909-b173-42a2-93f6-6d8e800f1d5a",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9151529270746628"
      ]
     },
     "execution_count": 84,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# should be similar\n",
    "np.dot(get_embedding('I went to the bank. Summarise this sentence in context of finance:', model), \n",
    "       get_embedding('I went to get money. Summarise this sentence in context of finance:', model))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "079470a0-acd3-400a-9c61-1a8baf73b610",
   "metadata": {},
   "source": [
    "# Context Dependent Embeddings (Approach 2) - Modify the text prompt and use it for embeddings"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "id": "ca94be16-1633-42f3-8475-5d1228802ec9",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def text_conversion(context, text):\n",
    "    return chat(f'''Context is {context}. \n",
    "Refine text based on context without changing the text's meaning.\n",
    "Do not add in what is not present in the text.\n",
    "Some parts of the text may have more meaning based on context, highlight those.\n",
    "If unable to refine, output original text''', text)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "id": "a3e33b5c-1afc-481f-bae1-8e32e10fdec4",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'I read an academic paper.'"
      ]
     },
     "execution_count": 86,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "text_conversion('academia', 'I read a paper')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "id": "54f2fb55-389c-4344-827d-14d26a184a3a",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'I read a news article.'"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "text_conversion('news', 'I read a paper')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "id": "70a95c7d-c318-412e-8a9c-2d8ebd2933a5",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'I read an exam paper.'"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "text_conversion('exam', 'I read a paper')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "id": "37f17368-8970-4c41-ab6e-8e541b2be88d",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "model = 'text-embedding-3-large'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "id": "67b3adf2-5050-4e04-a14b-70891e834447",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def get_embedding_by_context(text: str, context: str = '', model: str = 'gpt-3.5-turbo'):\n",
    "    ''' Gets an embedding based on the context. If context not given, does not do conversion '''\n",
    "    converted_sentence = text_conversion(context, text) if context != '' else text\n",
    "    return get_embedding(converted_sentence, model)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "id": "060f3fa3-c297-4b13-bf6f-aeff14061191",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Embedding similarity 0.5897400164080131\n"
     ]
    }
   ],
   "source": [
    "# should be similar\n",
    "x, y, context = 'I went to the bank', 'I went to the river', ''\n",
    "print('Embedding similarity', np.dot(get_embedding_by_context(x, context, model), \n",
    "                                     get_embedding_by_context(y, context, model)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "id": "6a6129cd-50c8-46bb-87b9-bb424b90dfdd",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Embedding similarity 0.8759913799435554\n"
     ]
    }
   ],
   "source": [
    "# should be similar\n",
    "x, y, context = 'I went to the bank', 'I went to the river', 'water'\n",
    "print('Embedding similarity', np.dot(get_embedding_by_context(x, context, model), \n",
    "                                     get_embedding_by_context(y, context, model)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "id": "59b2b9bc-5a6b-4c5a-ae6f-7fab41cb21f9",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Embedding similarity 0.4956905762475252\n"
     ]
    }
   ],
   "source": [
    "# should be different\n",
    "x, y, context = 'I went to the bank', 'I went to the river', 'finance'\n",
    "print('Embedding similarity', np.dot(get_embedding_by_context(x, context, model), \n",
    "                                     get_embedding_by_context(y, context, model)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "id": "d8841b20-9f3f-4585-9bec-17a6da890977",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Embedding similarity 0.8018812180559\n"
     ]
    }
   ],
   "source": [
    "# should be similar\n",
    "x, y, context = 'I went to the bank', 'I went to get money', ''\n",
    "print('Embedding similarity', np.dot(get_embedding_by_context(x, context, model), \n",
    "                                     get_embedding_by_context(y, context, model)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "id": "a59c84cc-37db-443d-a763-63e0648f37ff",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Embedding similarity 0.5029410724258297\n"
     ]
    }
   ],
   "source": [
    "# should be different\n",
    "x, y, context = 'I went to the bank', 'I went to get money', 'water'\n",
    "print('Embedding similarity', np.dot(get_embedding_by_context(x, context, model), \n",
    "                                     get_embedding_by_context(y, context, model)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "id": "b9714561-6138-47b8-9a7d-c956f5de6e5d",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Embedding similarity 0.6847778551131576\n"
     ]
    }
   ],
   "source": [
    "# should be similar\n",
    "x, y, context = 'I went to the bank', 'I went to get money', 'finance'\n",
    "print('Embedding similarity', np.dot(get_embedding_by_context(x, context, model), \n",
    "                                     get_embedding_by_context(y, context, model)))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6302a147-5801-4bc5-bd55-1273ff1029af",
   "metadata": {},
   "source": [
    "# Negation of values (text-embedding-3-large)\n",
    "- More performant compared to text-embedding-ada-002"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "id": "e222a558-9d39-4e68-91e2-dd80ac587e6c",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "model = 'text-embedding-3-large'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "id": "37e985e2-776f-4260-8430-b16788d6d6b0",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.537687984526523"
      ]
     },
     "execution_count": 98,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('have', model), get_embedding('do not have', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "id": "f1d459a6-2af2-4161-98e9-38d3a0e5c938",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.7664456530397772"
      ]
     },
     "execution_count": 99,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('Jonathan was present', model), get_embedding('Jonathan was absent', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "id": "38b571c0-f4f5-4720-bc54-a438d5fc5ef6",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.38758236896648085"
      ]
     },
     "execution_count": 100,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('present', model), get_embedding('absent', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "id": "0e7d6476-1b20-4df9-819f-a92c0fde2a5e",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.48815064811640596"
      ]
     },
     "execution_count": 101,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('present', model), get_embedding('not present', model))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fcbc5e22-0e5b-405c-b1c1-7417071cbf2f",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Negation of values (text-embedding-ada-002)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 102,
   "id": "4f51e445-cca5-41d2-9f10-691058661bed",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "model = 'text-embedding-ada-002'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 103,
   "id": "b0a33285-e39b-4f6a-aa0b-7eccb7958ceb",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8612163753882298"
      ]
     },
     "execution_count": 103,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('have', model), get_embedding('do not have', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 104,
   "id": "90b0c68e-0b3c-4991-b5ac-d306142658dd",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9487405481131359"
      ]
     },
     "execution_count": 104,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('Jonathan was present', model), get_embedding('Jonathan was absent', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "id": "abdfc4c9-1ce6-4f4a-991f-1d2f95995acd",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8294703415200366"
      ]
     },
     "execution_count": 105,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('present', model), get_embedding('absent', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "id": "3c90f471-e2b9-4e4e-a652-a234f6ef0780",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.8508408212164676"
      ]
     },
     "execution_count": 106,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('present', model), get_embedding('not present', model))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9f8a4146-bad6-43c2-bc57-f0e6cc0745e5",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Negation of values (text-embedding-3-small)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 107,
   "id": "bda1a5dc-9985-4a24-aff0-39968794b474",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "model = 'text-embedding-3-small'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 108,
   "id": "cffe7e84-4509-4f59-86a5-8a46ca523b91",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.5316601210294082"
      ]
     },
     "execution_count": 108,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('have', model), get_embedding('do not have', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 109,
   "id": "881a5d63-34c3-4388-8dfd-4651b58de693",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.835158308129629"
      ]
     },
     "execution_count": 109,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('Jonathan was present', model), get_embedding('Jonathan was absent', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "id": "6e220cfd-f4bd-4140-8d54-ec1f3805313b",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.4002265066603564"
      ]
     },
     "execution_count": 110,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('present', model), get_embedding('absent', model))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "id": "4feeb813-f258-4c53-8ec1-99fd024717be",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.44254542744698094"
      ]
     },
     "execution_count": 111,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.dot(get_embedding('present', model), get_embedding('not present', model))"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}


================================================
FILE: Experiments/LLM with Knowledge Graphs.ipynb
================================================
{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "40fd13df-67a3-46cf-b027-75351e07952b",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Answering questions with knowledge graph vs text-based context in ChatGPT\n",
    "- Updated 2 Apr 2024 to adapt to newer version of OpenAI API\n",
    "- Companion Notebook to https://www.youtube.com/watch?v=1RZ5yIyz31c\n",
    "\n",
    "- Key findings\n",
    "    - If knowledge graph is extracted correctly, it will actually be better than using the whole context as it can help to extract out only the relevant bits\n",
    "    - However, if the knowledge graph is extracted wrongly, it can lose information, so we must ensure the knowledge graph extraction is done with the right schema\n",
    "    - Knowledge graph-based answering will never be truly general, as the schema will constrain the triplets formed. For truly general QA, it is best to use the whole context\n",
    "    \n",
    "- Uses StrictJSON to parse the Knowledge Graph: https://github.com/tanchongmin/strictjson"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2781714a-acb1-4ca1-b721-599e7e23bec7",
   "metadata": {},
   "source": [
    "# Import required packages"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "18bd484d-00a5-43c0-9bfa-b98b1740f6eb",
   "metadata": {},
   "outputs": [],
   "source": [
    "# !pip install strictjson"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "73e5adbe-0f38-478b-82af-89094e5f40b5",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "from strictjson import *\n",
    "import os\n",
    "import openai\n",
    "from openai import OpenAI\n",
    "import networkx as nx\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "2614fa86-d097-4f73-b0c9-e4635809c262",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "# Put your OpenAI API key here\n",
    "os.environ[\"OPENAI_API_KEY\"] = '<YOUR KEY HERE>'"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a6591b3f-8416-4b9a-ad84-3d1908f25692",
   "metadata": {},
   "source": [
    "# Utility functions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "777945db-0fac-45c5-8a8e-5b9839f72d04",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def chat(system_prompt, user_prompt = '', model = 'gpt-3.5-turbo', temperature = 0, **kwargs):\n",
    "    ''' This replies the user based on a system prompt and user prompt to call OpenAI Chat Completions API '''\n",
    "    client = OpenAI()\n",
    "    response = client.chat.completions.create(\n",
    "        model=model,\n",
    "        temperature = temperature,\n",
    "        messages=[\n",
    "            {\"role\": \"system\", \"content\": system_prompt},\n",
    "            {\"role\": \"user\", \"content\": user_prompt}\n",
    "        ],\n",
    "        **kwargs\n",
    "    )\n",
    "    res = response.choices[0].message.content\n",
    "    return res"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "54f3bf03-8029-4a4a-a808-81b577069743",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "def plot_graph(kg):\n",
    "    ''' Plots graph based on knowledge graph '''\n",
    "    # Create graph\n",
    "    G = nx.DiGraph()\n",
    "    G.add_edges_from((source, target, {'relation': relation}) for source, relation, target in kg)\n",
    "\n",
    "    # Plot the graph\n",
    "    plt.figure(figsize=(10,6), dpi=300)\n",
    "    pos = nx.spring_layout(G, k=3, seed=0)\n",
    "\n",
    "    nx.draw_networkx_nodes(G, pos, node_size=1500)\n",
    "    nx.draw_networkx_edges(G, pos, edge_color='gray')\n",
    "    nx.draw_networkx_labels(G, pos, font_size=12)\n",
    "    edge_labels = nx.get_edge_attributes(G, 'relation')\n",
    "    nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels, font_size=10)\n",
    "\n",
    "    # Display the plot\n",
    "    plt.axis('off')\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "52bcbf6c-dc78-422b-a021-2a09cc397370",
   "metadata": {},
   "source": [
    "# Context\n",
    "- We create a fictional story and get GPT to answer a question about it\n",
    "- Here, the correct answer should be 2025"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "f02b70c9-4f78-41ab-9c47-f29f78a773c7",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "context ='''Apple announced the MacNCheese Pro in 2025. It proved a big hit.\n",
    "Apple gave Cheese a rousing ovation in 2026 after he invented the MacNCheese Pro in 2024.\n",
    "Orange created a competing product called the OrangeNCheese Pro.\n",
    "It's price was slightly higher at $5000, compared to Apple's $4000.'''\n",
    "\n",
    "question = 'When was the MacNCheese Pro announced?'"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "37189c29-433a-427d-90f9-79c3715f57c0",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Approach 1: Without Knowledge Graph and Context\n",
    "- This does not fare too well are the story is fictional and there is no knowledge of this in Native GPT"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "26b6cefe-d012-47a0-86b6-1d9daf3cbc55",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Question: When was the MacNCheese Pro announced?\n",
      "Answer without Knowledge Graph and Context: The MacNCheese Pro was announced on April 1, 2022.\n"
     ]
    }
   ],
   "source": [
    "# There is no knowledge of the MacNCheese Pro in native GPT\n",
    "print('Question:', question)\n",
    "print('Answer without Knowledge Graph and Context:', chat(question))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "eb51ef03-c9c9-4870-abcb-b08c1901be1a",
   "metadata": {},
   "source": [
    "# Approach 2: Using only Context\n",
    "- This is actually good enough and can be sufficient if the right part of the context is provided"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "5d58ec11-c8eb-4364-af1a-a5a4e3c24757",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Question: When was the MacNCheese Pro announced?\n",
      "Answer with Context: The MacNCheese Pro was announced in 2025.\n"
     ]
    }
   ],
   "source": [
    "print('Question:', question)\n",
    "print('Answer with Context:', chat(f\"Context: {context}\\nQuestion: {question}\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "51bec754-0358-45c1-aa15-961e4435ea68",
   "metadata": {},
   "source": [
    "# Approach 3: Using Knowledge Graph"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9b954422-ed55-41ed-83e5-3157c0a48fb7",
   "metadata": {
    "tags": []
   },
   "source": [
    "## Step 1: Generate knowledge graph from context"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "fea8fbc1-331a-4f30-82e6-5fb757608bd8",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'List of triplets': [('Apple', 'announced', 'MacNCheese Pro'), ('MacNCheese Pro', 'announced in', '2025'), ('Apple', 'gave', 'Cheese'), ('Cheese', 'invented', 'MacNCheese Pro'), ('MacNCheese Pro', 'invented in', '2024'), ('Apple', 'ovation', 'Cheese'), ('Cheese', 'ovation in', '2026'), ('Orange', 'created', 'OrangeNCheese Pro'), ('OrangeNCheese Pro', 'competing product with', 'MacNCheese Pro'), ('OrangeNCheese Pro', 'price', '$5000'), ('Apple', 'price', '$4000')]}\n"
     ]
    }
   ],
   "source": [
    "res = strict_json(system_prompt = '''You are a knowledge graph builder. \n",
    "You are to output relations between two objects in the form (object_1, relation, object_2). \n",
    "All information about dates must be included.\n",
    "Example Input: John bought a laptop\n",
    "Example Output: [('John', 'bought', 'laptop')]\n",
    "Example Input: John built a house in 2019\n",
    "Example Output: [('John', 'built', 'house'), ('house', 'built in', '2019')]''',\n",
    "                    user_prompt = context,\n",
    "                    output_format = {\"List of triplets\": \"List of triplets of the form (object_1, relation, object_2), type: list\"})\n",
    "print(res)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "1ba36a67-a722-40be-acfa-532b296d1729",
   "metadata": {
    "tags": []
   },
   "outputs": [],
   "source": [
    "kg = res['List of triplets']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "cceaf7e5-e63e-4038-ba92-9530fe95f6cb",
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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cpz+NH/s2LGYNm1aAKui3kIURRQWFsJiscBms6G1l5uCICAxMRFmsxkmk4lvsPZAoiji9ddfl42Q0Gq1WLRoEYOdASCKImpra5t1rHI4HO0+dp8+fWQdq+Li4qDT6TqgaiIiIiIiOh/Tp0/Hd999hwEDBmDWrFm44YYbMG7cOOn607tNjR07Ftu3b4fBYMCiRYvw5z//udkeP3/3KQDYtGkTHn74YeTn50tj/CIjI/Hmm29izpw5nfRIiYiILg6GqIiIiIiIepjPP/8cv/zyi3RZrVbjgQceQGhoaACrot7G4XAgLy8P+fn5qKura3WvwWCA2WxGeno6O9r0IDt37sSXX34pW5s5cyZGjx4doIqoJU6nU9atqrS0FFVVVe0+blhYWLNglV6vZ2CSiIiIiOgiOnHiBObPn48rrrgC119/Pfr27QtAHozyB6Jee+013HfffQCApKQkPPHEE5g/f750/enBKQBwu914/vnn8frrr+PIkSMICgqCz+eDKIq47bbb8NxzzyEiIkJ2X611tiIiIuqKGKIiIiIiIuphqqqq8Morr8i6AI0ePRozZ84MYFXUW3m9XthsNlgsFhQVFbW6V61WIy0tDdnZ2TAajZ1UIV0MjY2NeOWVV+B0OqW1qKgo3HfffbI34alramxsRGlpqSxcVVFR0Wp3ubYICQmRhari4uLQp08fBquIiIiIiDpQaWkpoqOjz/naa9++ffjjH/+InJwcKBQK6HQ6LFu2DJdddhkSEhIAAHV1daipqUF+fj6efPJJ7N27F263G0qlEh6PBwAwZ84cvP7664iOjpYd//QA1fr166HX6zF69Gh4PB6oVKqL8MiJiIjajyEqIiIiIqIe6IsvvsCuXbuky0qlEg888AD0en3giqJez263Izc3F1arFW63u9W9CQkJyMrKQkpKCkM33dC6deuwbds22drNN9+MIUOGBKgiai+32w273S7rWFVWVgav19uu4wYFBTXrWBUVFcVPqxMRERERtVNLY/nOvH7lypX429/+hiNHjgA49eEmg8GAYcOGYcCAAThw4AB8Ph8sFgsAQKVSQRRF6XXAE088gaeeegrAf0JTp4enGhsb8fLLL+OFF16Az+fDoUOHEBYW1qzLFRERUVfBEBURERERUQ9UXV2Nl19+GT6fT1rLysrCrFmzAlgV0SkulwtWqxUWiwUVFRWt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z10uF6666ippNLH/ecL/+3//D7///e9x7bXXYuPGjXC5XHjjjTcQFRWF++67r8XwNxER9W4c50dERERERBdk3LhxsjebRFHEpk2bAlgREbVk27ZtqKmpka1Nnz69Q94sViqVSE1NxW233Yb77rsPmZmZZz2u2+1GXl4eXn31VaxcuRJ79uyRutkREXV3giC02MVAEAT87//+L9atW4eysjJs3ry5xfE0p7vvvvuQlZUlnRQ8cOAAHnvsMWRmZiIlJQUzZ87E448/jk8++QRNTU2y29bW1sJms0mX+/btK43oO70mAHA4HAgPD5fCU8HBwef1mCsrK7F7924pQBYWFobBgwdDpWr+ud2ioiLU1NRI9z1ixAhoNJo23Y9Op0NFRYV0WaPRSN8bIiIi6plaClDdcMMNOHbsGIBToe/hw4dLYezjx4/j2Wefhc/nk42U93g8CA0NxYoVKzBlyhRoNBqcOHECX3zxhRTQJiIiOh1DVEREREREdEFCQ0NhNptla7/88ousywARBZbD4cCWLVtkawMGDEBycnKH35fRaMTs2bPx8MMP4/LLL0dUVNRZ9xYXF2P16tX45z//ie+//142CoqIqCc7vUvT2QiCgK+//hr/7//9PwwePFjWqen48eNYt24d/v73v+Puu++GUqmU3basrAxHjhyRLsfHxyM6Olo67ulfU1NTERcXJwVaDxw4gMOHD5+zC5V//+7du2VdSePj45GSkgIAspOX1dXVKC4uhiiKEEURUVFR59VFyuVyyR5TWFgY+vTp0+bbExERUff373//G16vVxoRP3XqVOTk5GD58uXSnjfffBPvv/++LIClUqkgiiISEhLwhz/8AcOHDwcAfP/999KIP364h4iITscQFRERERERXbBLL720WTcFdqMi6jq+++47uN1u6bIgCJg5c2aL3VI6ikajQXZ2NhYsWIBbb70VycnJZ70/p9OJzZs348UXX8RHH32Ew4cPy068ExH1VmFhYfjjH/+IFStW4NFHH4XZbG7W4WnEiBFQKpWyrkxHjx7FyZMnIQgClEolBgwYAL1e3+J9DB48WDoRqVar8csvv2D//v0A0GqnJ//P9M8//xyFhYXSc0Gz2SyN0BEEQfp5XlZWhqNHj8ru1x/saoujR49KXayUSiUiIyPP+piIiIio57HZbFiyZAk8Hg8aGxsRGhqKO++8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
Download .txt
gitextract_xzafacu1/

├── .github/
│   └── workflows/
│       └── publish.yml
├── .gitignore
├── Experiments/
│   ├── Context-Dependent-Embeddings.ipynb
│   ├── LLM with Knowledge Graphs.ipynb
│   └── README.md
├── LICENSE
├── Pipeline Flow.ipynb
├── README.md
├── Tutorial - Multimodal Inputs.ipynb
├── Tutorial - Provider_Structured_Outputs.ipynb
├── Tutorial - parse_yaml.ipynb
├── changelog.txt
├── env.example
├── pyproject.toml
├── requirements.txt
└── strictjson/
    ├── __init__.py
    ├── helper_functions.py
    ├── legacy/
    │   ├── README.md
    │   ├── Tutorial - strict_json.ipynb
    │   ├── strict_json.py
    │   ├── strict_json_async.py
    │   └── strictjson_AMA_30Apr2024.ipynb
    ├── llm/
    │   ├── __init__.py
    │   ├── gemini.py
    │   └── openai.py
    ├── parse_yaml.py
    └── utils/
        ├── __init__.py
        ├── gemini_image_parser.py
        └── openai_image_parser.py
Download .txt
SYMBOL INDEX (53 symbols across 8 files)

FILE: strictjson/helper_functions.py
  function split_outside_brackets (line 45) | def split_outside_brackets(s: str) -> (str, Optional[str]):
  function split_comma_outside_brackets (line 60) | def split_comma_outside_brackets(s: str) -> List[str]:
  function split_pipe_outside_brackets (line 80) | def split_pipe_outside_brackets(s: str) -> List[str]:
  function parse_generic_type (line 100) | def parse_generic_type(type_str: str) -> str:
  function _brackets_balanced (line 166) | def _brackets_balanced(s: str) -> bool:
  function determine_type (line 175) | def determine_type(val: str) -> (str, bool):
  function determine_field_type_and_desc (line 202) | def determine_field_type_and_desc(val: str) -> (str, Optional[str]):
  function sanitize_key (line 215) | def sanitize_key(key: str) -> str:
  function merge_dicts (line 218) | def merge_dicts(dicts: List[Dict]) -> Dict:
  function process_schema_value (line 226) | def process_schema_value(key: str, value: Any, parent: str) -> (str, Opt...
  function convert_schema_to_pydantic (line 252) | def convert_schema_to_pydantic(schema: Dict, main_model: str = "pydantic...
  function convert_schema_to_openai_pydantic (line 491) | def convert_schema_to_openai_pydantic(schema: Dict, main_model: str = "p...

FILE: strictjson/legacy/strict_json.py
  function convert_to_list (line 9) | def convert_to_list(field: str, **kwargs) -> list:
  function convert_to_dict (line 21) | def convert_to_dict(field: str, keys: dict, delimiter: str) -> dict:
  function llm_check (line 74) | def llm_check(field, llm_check_msg: str, **kwargs) -> Tuple[bool, str]:
  function parse_response_llm_check (line 92) | def parse_response_llm_check(res: str) -> Tuple[bool, str]:
  function type_check_and_convert (line 109) | def type_check_and_convert(field, key, data_type, **kwargs):
  function check_datatype (line 204) | def check_datatype(field, key: dict, data_type: str, **kwargs):
  function check_key (line 268) | def check_key(field: str, output_format, new_output_format, delimiter: s...
  function remove_unicode_escape (line 329) | def remove_unicode_escape(my_datatype):
  function wrap_with_angle_brackets (line 348) | def wrap_with_angle_brackets(d: dict, delimiter: str, delimiter_num: int...
  function chat (line 371) | def chat(system_prompt: str, user_prompt: str, model: str = 'gpt-4o-mini...
  function strict_json (line 424) | def strict_json(system_prompt: str, user_prompt: str, output_format: dic...

FILE: strictjson/legacy/strict_json_async.py
  function ensure_awaitable (line 10) | def ensure_awaitable(func, name):
  function convert_to_list_async (line 15) | async def convert_to_list_async(field: str, **kwargs) -> list:
  function llm_check_async (line 28) | async def llm_check_async(field, llm_check_msg: str, **kwargs) -> Tuple[...
  function check_datatype_async (line 46) | async def check_datatype_async(field, key: dict, data_type: str, **kwargs):
  function check_key_async (line 109) | async def check_key_async(field: str, output_format, new_output_format, ...
  function chat_async (line 168) | async def chat_async(system_prompt: str, user_prompt: str, model: str = ...
  function strict_json_async (line 225) | async def strict_json_async(system_prompt: str, user_prompt: str, output...

FILE: strictjson/llm/gemini.py
  function gemini_sync (line 14) | def gemini_sync(
  function gemini_async (line 94) | async def gemini_async(

FILE: strictjson/llm/openai.py
  function openai_sync (line 11) | def openai_sync(
  function openai_async (line 79) | async def openai_async(

FILE: strictjson/parse_yaml.py
  function ensure_awaitable (line 15) | def ensure_awaitable(func, name):
  function quote_special_keys (line 22) | def quote_special_keys(yaml_text: str) -> str:
  function quote_values_with_colons (line 76) | def quote_values_with_colons(yaml_text: str) -> str:
  function _python_type_to_placeholder (line 135) | def _python_type_to_placeholder(tp) -> str:
  function _with_desc (line 148) | def _with_desc(text: Any, desc: Optional[str]):
  function _annot_to_template (line 155) | def _annot_to_template(tp, field_desc: Optional[str] = None):
  function convert_pydantic_to_yaml (line 208) | def convert_pydantic_to_yaml(model_cls) -> str:
  function parse_yaml (line 221) | def parse_yaml(system_prompt: str,
  function parse_yaml_async (line 448) | async def parse_yaml_async(system_prompt: str,

FILE: strictjson/utils/gemini_image_parser.py
  function _split_prompt (line 6) | def _split_prompt(user_prompt: str) -> List[str]:
  function _fetch_url_image_async (line 11) | async def _fetch_url_image_async(session, url: str, types):
  function _open_local_image_async (line 20) | async def _open_local_image_async(path: str):
  function _fetch_url_image_sync (line 26) | def _fetch_url_image_sync(url: str, types):
  function _open_local_image_sync (line 41) | def _open_local_image_sync(path: str):
  function gemini_image_parser_async (line 47) | def gemini_image_parser_async(func):
  function gemini_image_parser_sync (line 95) | def gemini_image_parser_sync(func):

FILE: strictjson/utils/openai_image_parser.py
  function _parse_prompt_to_contents (line 8) | def _parse_prompt_to_contents(user_prompt: str) -> List[Dict[str, Any]]:
  function openai_image_parser_sync (line 38) | def openai_image_parser_sync(func: Callable[..., Any]) -> Callable[..., ...
  function openai_image_parser_async (line 48) | def openai_image_parser_async(func: Callable[..., Awaitable[Any]]) -> Ca...
Condensed preview — 29 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (5,927K chars).
[
  {
    "path": ".github/workflows/publish.yml",
    "chars": 619,
    "preview": "name: Publish to PyPI\n\non:\n  release:\n    types: [published]\n\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    steps:\n    "
  },
  {
    "path": ".gitignore",
    "chars": 51,
    "preview": ".env\n.ipynb_checkpoints\n__pycache__\n.venv\n.DS_Store"
  },
  {
    "path": "Experiments/Context-Dependent-Embeddings.ipynb",
    "chars": 27408,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"3a3bd0fb-7d87-4992-beb0-f622d61c467c\",\n   \"metadata\": {},\n   \"so"
  },
  {
    "path": "Experiments/LLM with Knowledge Graphs.ipynb",
    "chars": 507466,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"40fd13df-67a3-46cf-b027-75351e07952b\",\n   \"metadata\": {\n    \"tag"
  },
  {
    "path": "Experiments/README.md",
    "chars": 177,
    "preview": "This folder contains the various experiments to help improve LLMs and Retrieval Augmented Generation\nOnce they are verif"
  },
  {
    "path": "LICENSE",
    "chars": 1077,
    "preview": "Copyright (c) John's AI Group (discord.gg/bzp87AHJy5)\n\nPermission is hereby granted, free of charge, to any person obtai"
  },
  {
    "path": "Pipeline Flow.ipynb",
    "chars": 46438,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"502d255f-6d12-4db9-bcc8-13344ab06e6e\",\n   \"metadata\": {},\n   \"so"
  },
  {
    "path": "README.md",
    "chars": 10681,
    "preview": "# StrictJSON v6.3.0 \n\n# Easy Structured Output for Large Language Models (LLMs)\n\n- Structured Output helps to constrain "
  },
  {
    "path": "Tutorial - Multimodal Inputs.ipynb",
    "chars": 2325144,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"c3b762d0-6e61-4411-a494-f6d3a009f2f8\",\n   \"metadata\": {},\n   \"so"
  },
  {
    "path": "Tutorial - Provider_Structured_Outputs.ipynb",
    "chars": 2342303,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"c3b762d0-6e61-4411-a494-f6d3a009f2f8\",\n   \"metadata\": {},\n   \"so"
  },
  {
    "path": "Tutorial - parse_yaml.ipynb",
    "chars": 52045,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"eecd920b-ea8c-4890-ad76-227d7fd52964\",\n   \"metadata\": {},\n   \"so"
  },
  {
    "path": "changelog.txt",
    "chars": 9965,
    "preview": "20 Nov 2025 (v6.3.0)\n- Added support for using StrictJSON Schema for OpenAI and Gemini models\n- Default StrictJSON will "
  },
  {
    "path": "env.example",
    "chars": 49,
    "preview": "export OPENAI_API_KEY = \nexport GEMINI_API_KEY = "
  },
  {
    "path": "pyproject.toml",
    "chars": 829,
    "preview": "[build-system]\nrequires = [\"setuptools>=65.5.1\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"str"
  },
  {
    "path": "requirements.txt",
    "chars": 51,
    "preview": "pydantic>=2.12.4\npython-dotenv>=1.2.1\npyyaml>=6.0.3"
  },
  {
    "path": "strictjson/__init__.py",
    "chars": 270,
    "preview": "from .legacy.strict_json import strict_json\nfrom .legacy.strict_json_async import strict_json_async\nfrom .parse_yaml imp"
  },
  {
    "path": "strictjson/helper_functions.py",
    "chars": 24855,
    "preview": "#####################################\n#### Schema -> Pydantic Function ####\n#####################################\n\nimpor"
  },
  {
    "path": "strictjson/legacy/README.md",
    "chars": 12837,
    "preview": "## How do I use this? \n1. Download package via command line ```pip install strictjson```\n2. Import the required function"
  },
  {
    "path": "strictjson/legacy/Tutorial - strict_json.ipynb",
    "chars": 55295,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"ec216685-5ec3-497c-9ef8-e1758ca30423\",\n   \"metadata\": {},\n   \"so"
  },
  {
    "path": "strictjson/legacy/strict_json.py",
    "chars": 26843,
    "preview": "import json\nimport re\nimport ast\nfrom typing import Tuple\n\n\n### Helper Functions ###\n\ndef convert_to_list(field: str, **"
  },
  {
    "path": "strictjson/legacy/strict_json_async.py",
    "chars": 17533,
    "preview": "import asyncio\nimport json\nimport re\nimport ast\nimport inspect\nfrom typing import Tuple\nfrom .strict_json import convert"
  },
  {
    "path": "strictjson/legacy/strictjson_AMA_30Apr2024.ipynb",
    "chars": 386080,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"id\": \"abe801c4-f502-4425-a6e4-82b7e317a23f\",\n   \"metadata\": {\n    \"tag"
  },
  {
    "path": "strictjson/llm/__init__.py",
    "chars": 91,
    "preview": "from .gemini import gemini_sync, gemini_async\nfrom .openai import openai_sync, openai_async"
  },
  {
    "path": "strictjson/llm/gemini.py",
    "chars": 5408,
    "preview": "from google.genai import types\nfrom google import genai\nfrom google.api_core.exceptions import GoogleAPICallError\n\nimpor"
  },
  {
    "path": "strictjson/llm/openai.py",
    "chars": 4735,
    "preview": "import logging\nfrom typing import List, Union, Optional, Type\n\nimport openai\nfrom openai import OpenAI, AsyncOpenAI, API"
  },
  {
    "path": "strictjson/parse_yaml.py",
    "chars": 25581,
    "preview": "from typing import Any, Dict, List, Union, Optional, Annotated, Callable, Awaitable, get_origin, get_args\nfrom pydantic "
  },
  {
    "path": "strictjson/utils/__init__.py",
    "chars": 294,
    "preview": "from .openai_image_parser import openai_image_parser_sync, openai_image_parser_async\nfrom .gemini_image_parser import ge"
  },
  {
    "path": "strictjson/utils/gemini_image_parser.py",
    "chars": 5393,
    "preview": "import re\nimport asyncio\nfrom typing import List, Union\n\n\ndef _split_prompt(user_prompt: str) -> List[str]:\n    \"\"\"Split"
  },
  {
    "path": "strictjson/utils/openai_image_parser.py",
    "chars": 2471,
    "preview": "import os\nimport re\nimport base64\nimport mimetypes\nfrom functools import wraps\nfrom typing import Any, Callable, Awaitab"
  }
]

About this extraction

This page contains the full source code of the tanchongmin/strictjson GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 29 files (5.6 MB), approximately 1.5M tokens, and a symbol index with 53 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!