{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from llama_index.core import SimpleDirectoryReader" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "passbook_id = \"user001\"" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[Document(id_='2612cab8-acbb-48c8-87a7-839b628cf654', embedding=None, metadata={'file_path': 'passbooks\\\\user001.json', 'file_name': 'user001.json', 'file_type': 'application/json', 'file_size': 1878, 'creation_date': '2024-05-05', 'last_modified_date': '2024-05-06'}, excluded_embed_metadata_keys=['file_name', 'file_type', 'file_size', 'creation_date', 'last_modified_date', 'last_accessed_date'], excluded_llm_metadata_keys=['file_name', 'file_type', 'file_size', 'creation_date', 'last_modified_date', 'last_accessed_date'], relationships={}, text='[\\r\\n {\\r\\n \"entry_id\": 1,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Groceries\",\\r\\n \"debit\": 100.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 25640.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 2,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Salary\",\\r\\n \"debit\": null,\\r\\n \"credit\": 1000.00,\\r\\n \"balance\": 26640.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 3,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Rent\",\\r\\n \"debit\": 500.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 26140.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 4,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Electricity\",\\r\\n \"debit\": 200.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 25940.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 5,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Internet\",\\r\\n \"debit\": 50.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 25890.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 6,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Salary\",\\r\\n \"debit\": null,\\r\\n \"credit\": 1000.00,\\r\\n \"balance\": 26890.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 7,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Groceries\",\\r\\n \"debit\": 100.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 26790.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 8,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Rent\",\\r\\n \"debit\": 500.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 26290.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 9,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Electricity\",\\r\\n \"debit\": 200.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 26090.00\\r\\n },\\r\\n\\r\\n {\\r\\n \"entry_id\": 10,\\r\\n \"date\": \"06-05-2024\",\\r\\n \"description\": \"Internet\",\\r\\n \"debit\": 50.00,\\r\\n \"credit\": null,\\r\\n \"balance\": 26040.00\\r\\n }\\r\\n]', start_char_idx=None, end_char_idx=None, text_template='{metadata_str}\\n\\n{content}', metadata_template='{key}: {value}', metadata_seperator='\\n')]\n" ] } ], "source": [ "json_file = SimpleDirectoryReader(\n", " input_files = [f\"passbooks/{passbook_id}.json\"]\n", " ).load_data()\n", "print(json_file)\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "from llama_index.core.prompts.prompts import SimpleInputPrompt\n", "\n", "system_prompt=\"\"\"\n", "You are a Q&A assistant. Your goal is to answer questions as accurately as possible based on the instructions and context provided.\n", "You will be provided with list of bank statements and you have to analyse the debits and credits based on the description and date and answer accordingly to user queries.\n", "\"\"\"\n", "\n", "query_wrapper_prompt=SimpleInputPrompt(\"<|USER|>{query_str}<|ASSISTANT|>\")" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "3ac9bb85d9e1454cab179dd35d68acc9", "version_major": 2, "version_minor": 0 }, "text/plain": [ "VBox(children=(HTML(value='