banko-ai-assistant 1.0.15__tar.gz → 1.0.17__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {banko_ai_assistant-1.0.15/banko_ai_assistant.egg-info → banko_ai_assistant-1.0.17}/PKG-INFO +84 -19
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/README.md +80 -15
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/cli.py +8 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/vector_search/generator.py +17 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/vector_search/search.py +3 -3
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/web/app.py +1 -1
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17/banko_ai_assistant.egg-info}/PKG-INFO +84 -19
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai_assistant.egg-info/requires.txt +3 -3
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/pyproject.toml +4 -4
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/LICENSE +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/MANIFEST.in +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/__init__.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/__main__.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/__init__.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/aws_provider.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/base.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/factory.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/gemini_provider.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/openai_provider.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/watsonx_provider.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/config/__init__.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/config/settings.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/Anallytics.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/Graph.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/Graph2.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/ai-status.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/banko-ai-assistant-watsonx.gif +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/banko-db-ops.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/banko-response.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/cache-stats.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/0dbda187ceb472a466dff54b7015b1d4.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/10903-7f8736e237ced107.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/10966-809952783184ae4b.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/13351-8a7dda060266efff.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/1342-c79d3d17da82f23c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/16142-bdecf7bfdd6d70ae.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/16550-e89f65017860221d.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/17492-942c70b114fdcce1.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/18352-481d67e871cc6985.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/18555-0d9763eb744f7a77.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/19437-575ba467ea85e866.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/1aca1669c3b4a07f0966c4733c939d6d.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/20126-602c15db592cf3c4.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/20224-b6de2c08cc8ad497.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/2029a63f9af76541f860b6a6a4ec0c90.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/21662-1214728138c72aa2.css +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/22517-5f7ab2631d424b77.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/23019-be3b8956cee94725.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/26067-cb77f2673c5f757c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/27405-880a12623820964d.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/27503-82078c18034012ed.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/28090-8e4b5fd6c88f8eb2.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/2c66dacf04db64cc1099835f2e2328d5.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/30090868cb2b559a7093999fec5fbcc8.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/30102-608e861dccc907f1.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/31600-ca2e152d871d51d5.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/31d5156a9cc5fe5fd780c2d9e59db98f.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/34713-54729fd9c7517d50.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/35074-d765c14dc3e8eafc.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/38230-4d6eb1a608eecdeb.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/40566-e2dbb4226dd2ab42.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/42298-668aa166e1146c6c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/43203-3a1e46e5259313c8.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/44429-6534f772a6bd895b.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/48327-48fb70091d7ac731.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/49923-dc71193d54a0b99c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/49c3cac3c5a09ca104a2efea48536d14.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/50040-3c27b1fe14ca588b.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/5047473e06297bbccfae9c43ca36bd93.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/51531-253e8d8f8f527d9c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/58103-d6be57f2d624e7b4.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/58822-d1779ebe9d4fab59.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/61b440e4366b35d7213172be53d3864e.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/61d121a699367070f3988f633ed6ac7d.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/65610-15f55d146aa3cc6f.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/65662-2b7065d2ddcf6a0c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/67631-9d4d7f4aab06e79c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/68445-8aae26e83c03d9bc.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/6863-da15e99ca946f07a.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/71526-518cf6126a32651b.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/72268-8f69a6e8585b9af2.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/76f1a52015cf2a243ed085586f3d44e8.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/80538-65bd348271403336.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/81505-387f6ddb644ae967.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/8151-1a0cf04ea45ad513.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/83119-1cf7ca2f5ba0e1ab.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/83485-27ce97f9e7369ed7.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/8575-e1977ceb3b34da9c.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/8962-664b3c9b21ec2e0f.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/90123-40fd5c2d5dc1c0a1.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/91846-55cc5635c18159a0.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/91936-56d11562a38b3f77.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/96833-fbcb1ab8436924d4.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/99246-889e96fc0a42e07a.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/99961-ee8d9a1207a9db7a.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/DefaultPinRep-78e567622e9cb382.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/DesktopUnauthPageWrapper-26b3c2c050f09d27.css +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/DesktopUnauthPageWrapper-a120f0b0faa773a2.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/KkWFeSURekXGycdprVC-UY6ED-ZF5ll2JCMiHhJE2Rk.js +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/MobileAndUnauthPinPage-0083f61f79e906d2.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/UnauthCloseupRelatedPins-d98c713ac2e141a7.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/[id]-87f8f6f1f81e3a8a.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/_client-49638f60bdf5658e.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/a7ee24644496b7a3131cd4e13b8c6edb.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/a8ada9395c00dffc8fb81a7b76bd34b5.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/abbf5a82906bef8c6be49ab38eaeea7c.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/ad910641231bb413f6a985e4e9961efb.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/anchor.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/b6083df3cfa26856caef114c51a8d21e.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/b957829ac112a8c28b313307e5ff0df6.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/bb2d3d28e3421d901d8d431c33f0c6ed.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/bb2d3d28e3421d901d8d431c33f0c6ed.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/c3031b4a938377789e00d3d2f3b2438c.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/client +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/ct.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/d03e6db9649ea3479b799d5a21008ac2.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/d3d38fd9aa0c808a28ff5bd9ae5b5576.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/de7cb9e198b4ebc9430824132ccfce2e.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/e4330b4a4e71a3f77dd0682b99037cad.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/ecdf72d4d54e70608e9416020f8ad67d.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/eef64355b9f10e89c355b138adbae1e9.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/enterprise.js +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/f1354f6bb993409ea12235a01a978936.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/f7c30e2615fe0e57d9ab6e41aac5e738.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/fa72fa1ae9bb3ec93f41595333d22d16.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/fb09ce3b0feb4931402867cf109cd618.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/i +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/locale-en_US-lite-js-d0d346142714beb1.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/login-3c695aa28fdc27a5.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/login-e161a84cea9cd0a3.css +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/packages-rich-snippet-LeafSnippet-b7f61038a4431021.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/polyfills-c5ca6e711f8975ec.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/recaptcha__en.js +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/repin-62bbd4d7c8e22f17.css +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/repin-d49f19d89ddd3cbe.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/runtime-505e4380476a458b.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/saved_resource(1).html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/saved_resource(2).html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/saved_resource.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/sdk(1).js +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/sdk.js +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/select.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/style +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/styles__ltr.css +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/unnamed.jpg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/vendor-react-76e71fd67c83934b.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/creditcard_files/visual-search-fe95849c7568d600.mjs +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/css/style.css +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/profilepic.jpeg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/query_watcher.png +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/roach-logo.svg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/static/watsonx-icon.svg +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/templates/base.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/templates/dashboard.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/templates/index.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/templates/login.html +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/utils/__init__.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/utils/cache_manager.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/utils/database.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/utils/migration.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/vector_search/__init__.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/vector_search/enrichment.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/web/__init__.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/web/auth.py +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai_assistant.egg-info/SOURCES.txt +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai_assistant.egg-info/dependency_links.txt +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai_assistant.egg-info/entry_points.txt +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai_assistant.egg-info/top_level.txt +0 -0
- {banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/setup.cfg +0 -0
{banko_ai_assistant-1.0.15/banko_ai_assistant.egg-info → banko_ai_assistant-1.0.17}/PKG-INFO
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: banko-ai-assistant
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.17
|
4
4
|
Summary: AI-powered expense analysis and RAG system with CockroachDB vector search and multi-provider AI support
|
5
5
|
Author-email: Virag Tripathi <virag.tripathi@gmail.com>
|
6
6
|
License-Expression: MIT
|
@@ -30,9 +30,9 @@ Requires-Dist: jinja2<4.0.0,>=3.1.0
|
|
30
30
|
Requires-Dist: psycopg2-binary<3.0.0,>=2.9.0
|
31
31
|
Requires-Dist: sqlalchemy<3.0.0,>=2.0.0
|
32
32
|
Requires-Dist: sqlalchemy-cockroachdb<3.0.0,>=2.0.0
|
33
|
-
Requires-Dist: sentence-transformers<
|
34
|
-
Requires-Dist: boto3<1.
|
35
|
-
Requires-Dist: botocore<1.
|
33
|
+
Requires-Dist: sentence-transformers<4.0.0,>=3.1.0
|
34
|
+
Requires-Dist: boto3<1.41.0,>=1.40.0
|
35
|
+
Requires-Dist: botocore<1.41.0,>=1.40.0
|
36
36
|
Requires-Dist: openai<2.0.0,>=1.11.0
|
37
37
|
Requires-Dist: requests<3.0.0,>=2.32.4
|
38
38
|
Requires-Dist: numpy<2.0.0,>=1.26.0
|
@@ -76,9 +76,48 @@ A modern AI-powered expense analysis application with Retrieval-Augmented Genera
|
|
76
76
|
|
77
77
|
### Prerequisites
|
78
78
|
|
79
|
-
- Python 3.8
|
80
|
-
- CockroachDB (
|
81
|
-
-
|
79
|
+
- **Python 3.8+**
|
80
|
+
- **CockroachDB v25.2.4+** (recommended: [v25.3.1](https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1))
|
81
|
+
- **Vector Index Feature Enabled** (required for vector search)
|
82
|
+
- **AI Provider API Key** (OpenAI, AWS, IBM Watsonx, or Google Gemini)
|
83
|
+
|
84
|
+
#### CockroachDB Setup
|
85
|
+
|
86
|
+
1. **Download and Install CockroachDB**:
|
87
|
+
```bash
|
88
|
+
# Download CockroachDB v25.3.1 (recommended)
|
89
|
+
# Visit: https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1
|
90
|
+
|
91
|
+
# Or install via package manager
|
92
|
+
brew install cockroachdb/tap/cockroach # macOS
|
93
|
+
```
|
94
|
+
|
95
|
+
2. **Start CockroachDB Single Node**:
|
96
|
+
```bash
|
97
|
+
# Start a single-node cluster (for development)
|
98
|
+
cockroach start-single-node \
|
99
|
+
--insecure \
|
100
|
+
--store=./cockroach-data \
|
101
|
+
--listen-addr=localhost:26257 \
|
102
|
+
--http-addr=localhost:8080 \
|
103
|
+
--background
|
104
|
+
```
|
105
|
+
|
106
|
+
3. **Enable Vector Index Feature**:
|
107
|
+
```sql
|
108
|
+
-- Connect to the database
|
109
|
+
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
110
|
+
|
111
|
+
-- Enable vector index feature (required for vector search)
|
112
|
+
SET CLUSTER SETTING feature.vector_index.enabled = true;
|
113
|
+
```
|
114
|
+
|
115
|
+
4. **Verify Setup**:
|
116
|
+
```sql
|
117
|
+
-- Check if vector index is enabled
|
118
|
+
SHOW CLUSTER SETTING feature.vector_index.enabled;
|
119
|
+
-- Should return: true
|
120
|
+
```
|
82
121
|
|
83
122
|
### Installation
|
84
123
|
|
@@ -94,7 +133,7 @@ export WATSONX_MODEL_ID="openai/gpt-oss-120b"
|
|
94
133
|
export DATABASE_URL="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
95
134
|
|
96
135
|
# Run the application
|
97
|
-
python -m
|
136
|
+
python -m banko-ai
|
98
137
|
```
|
99
138
|
|
100
139
|
#### Option 2: Development Installation
|
@@ -230,14 +269,14 @@ banko-ai help
|
|
230
269
|
|
231
270
|
## 🔌 API Endpoints
|
232
271
|
|
233
|
-
| Endpoint
|
234
|
-
|
235
|
-
| `/`
|
236
|
-
| `/api/health`
|
237
|
-
| `/api/ai-providers` | GET
|
238
|
-
| `/api/models`
|
239
|
-
| `/api/search`
|
240
|
-
| `/api/rag`
|
272
|
+
| Endpoint | Method | Description |
|
273
|
+
|---------------------|--------|---------------------------------------|
|
274
|
+
| `/` | GET | Web interface |
|
275
|
+
| `/api/health` | GET | System health check |
|
276
|
+
| `/api/ai-providers` | GET | Available AI providers |
|
277
|
+
| `/api/models` | GET | Available models for current provider |
|
278
|
+
| `/api/search` | POST | Vector search expenses |
|
279
|
+
| `/api/rag` | POST | RAG-based Q&A |
|
241
280
|
|
242
281
|
### API Examples
|
243
282
|
|
@@ -366,10 +405,36 @@ banko_ai/
|
|
366
405
|
|
367
406
|
### Common Issues
|
368
407
|
|
408
|
+
**CockroachDB Version Issues**
|
409
|
+
```bash
|
410
|
+
# Check CockroachDB version (must be v25.2.4+)
|
411
|
+
cockroach version
|
412
|
+
|
413
|
+
# If version is too old, download v25.3.1:
|
414
|
+
# https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1
|
415
|
+
```
|
416
|
+
|
417
|
+
**Vector Index Feature Not Enabled**
|
418
|
+
```bash
|
419
|
+
# Connect to database and enable vector index feature
|
420
|
+
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
421
|
+
|
422
|
+
# Enable vector index feature
|
423
|
+
SET CLUSTER SETTING feature.vector_index.enabled = true;
|
424
|
+
|
425
|
+
# Verify it's enabled
|
426
|
+
SHOW CLUSTER SETTING feature.vector_index.enabled;
|
427
|
+
```
|
428
|
+
|
369
429
|
**Database Connection Error**
|
370
430
|
```bash
|
371
|
-
#
|
372
|
-
cockroach start
|
431
|
+
# Start CockroachDB single node
|
432
|
+
cockroach start-single-node \
|
433
|
+
--insecure \
|
434
|
+
--store=./cockroach-data \
|
435
|
+
--listen-addr=localhost:26257 \
|
436
|
+
--http-addr=localhost:8080 \
|
437
|
+
--background
|
373
438
|
|
374
439
|
# Verify database exists
|
375
440
|
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable" --execute "SHOW TABLES;"
|
@@ -417,4 +482,4 @@ For issues and questions:
|
|
417
482
|
|
418
483
|
---
|
419
484
|
|
420
|
-
**Built with ❤️ using CockroachDB, Flask, and modern AI technologies**
|
485
|
+
**Built with ❤️ using CockroachDB, Flask, and modern AI technologies such as **
|
@@ -22,9 +22,48 @@ A modern AI-powered expense analysis application with Retrieval-Augmented Genera
|
|
22
22
|
|
23
23
|
### Prerequisites
|
24
24
|
|
25
|
-
- Python 3.8
|
26
|
-
- CockroachDB (
|
27
|
-
-
|
25
|
+
- **Python 3.8+**
|
26
|
+
- **CockroachDB v25.2.4+** (recommended: [v25.3.1](https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1))
|
27
|
+
- **Vector Index Feature Enabled** (required for vector search)
|
28
|
+
- **AI Provider API Key** (OpenAI, AWS, IBM Watsonx, or Google Gemini)
|
29
|
+
|
30
|
+
#### CockroachDB Setup
|
31
|
+
|
32
|
+
1. **Download and Install CockroachDB**:
|
33
|
+
```bash
|
34
|
+
# Download CockroachDB v25.3.1 (recommended)
|
35
|
+
# Visit: https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1
|
36
|
+
|
37
|
+
# Or install via package manager
|
38
|
+
brew install cockroachdb/tap/cockroach # macOS
|
39
|
+
```
|
40
|
+
|
41
|
+
2. **Start CockroachDB Single Node**:
|
42
|
+
```bash
|
43
|
+
# Start a single-node cluster (for development)
|
44
|
+
cockroach start-single-node \
|
45
|
+
--insecure \
|
46
|
+
--store=./cockroach-data \
|
47
|
+
--listen-addr=localhost:26257 \
|
48
|
+
--http-addr=localhost:8080 \
|
49
|
+
--background
|
50
|
+
```
|
51
|
+
|
52
|
+
3. **Enable Vector Index Feature**:
|
53
|
+
```sql
|
54
|
+
-- Connect to the database
|
55
|
+
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
56
|
+
|
57
|
+
-- Enable vector index feature (required for vector search)
|
58
|
+
SET CLUSTER SETTING feature.vector_index.enabled = true;
|
59
|
+
```
|
60
|
+
|
61
|
+
4. **Verify Setup**:
|
62
|
+
```sql
|
63
|
+
-- Check if vector index is enabled
|
64
|
+
SHOW CLUSTER SETTING feature.vector_index.enabled;
|
65
|
+
-- Should return: true
|
66
|
+
```
|
28
67
|
|
29
68
|
### Installation
|
30
69
|
|
@@ -40,7 +79,7 @@ export WATSONX_MODEL_ID="openai/gpt-oss-120b"
|
|
40
79
|
export DATABASE_URL="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
41
80
|
|
42
81
|
# Run the application
|
43
|
-
python -m
|
82
|
+
python -m banko-ai
|
44
83
|
```
|
45
84
|
|
46
85
|
#### Option 2: Development Installation
|
@@ -176,14 +215,14 @@ banko-ai help
|
|
176
215
|
|
177
216
|
## 🔌 API Endpoints
|
178
217
|
|
179
|
-
| Endpoint
|
180
|
-
|
181
|
-
| `/`
|
182
|
-
| `/api/health`
|
183
|
-
| `/api/ai-providers` | GET
|
184
|
-
| `/api/models`
|
185
|
-
| `/api/search`
|
186
|
-
| `/api/rag`
|
218
|
+
| Endpoint | Method | Description |
|
219
|
+
|---------------------|--------|---------------------------------------|
|
220
|
+
| `/` | GET | Web interface |
|
221
|
+
| `/api/health` | GET | System health check |
|
222
|
+
| `/api/ai-providers` | GET | Available AI providers |
|
223
|
+
| `/api/models` | GET | Available models for current provider |
|
224
|
+
| `/api/search` | POST | Vector search expenses |
|
225
|
+
| `/api/rag` | POST | RAG-based Q&A |
|
187
226
|
|
188
227
|
### API Examples
|
189
228
|
|
@@ -312,10 +351,36 @@ banko_ai/
|
|
312
351
|
|
313
352
|
### Common Issues
|
314
353
|
|
354
|
+
**CockroachDB Version Issues**
|
355
|
+
```bash
|
356
|
+
# Check CockroachDB version (must be v25.2.4+)
|
357
|
+
cockroach version
|
358
|
+
|
359
|
+
# If version is too old, download v25.3.1:
|
360
|
+
# https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1
|
361
|
+
```
|
362
|
+
|
363
|
+
**Vector Index Feature Not Enabled**
|
364
|
+
```bash
|
365
|
+
# Connect to database and enable vector index feature
|
366
|
+
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
367
|
+
|
368
|
+
# Enable vector index feature
|
369
|
+
SET CLUSTER SETTING feature.vector_index.enabled = true;
|
370
|
+
|
371
|
+
# Verify it's enabled
|
372
|
+
SHOW CLUSTER SETTING feature.vector_index.enabled;
|
373
|
+
```
|
374
|
+
|
315
375
|
**Database Connection Error**
|
316
376
|
```bash
|
317
|
-
#
|
318
|
-
cockroach start
|
377
|
+
# Start CockroachDB single node
|
378
|
+
cockroach start-single-node \
|
379
|
+
--insecure \
|
380
|
+
--store=./cockroach-data \
|
381
|
+
--listen-addr=localhost:26257 \
|
382
|
+
--http-addr=localhost:8080 \
|
383
|
+
--background
|
319
384
|
|
320
385
|
# Verify database exists
|
321
386
|
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable" --execute "SHOW TABLES;"
|
@@ -363,4 +428,4 @@ For issues and questions:
|
|
363
428
|
|
364
429
|
---
|
365
430
|
|
366
|
-
**Built with ❤️ using CockroachDB, Flask, and modern AI technologies**
|
431
|
+
**Built with ❤️ using CockroachDB, Flask, and modern AI technologies such as **
|
@@ -60,6 +60,7 @@ def run(host, port, debug, generate_data, no_data, clear_data, background):
|
|
60
60
|
# Generate data if not explicitly disabled
|
61
61
|
if not no_data:
|
62
62
|
click.echo("🔍 Checking database setup...")
|
63
|
+
click.echo(f"Using database: {config.database_url}")
|
63
64
|
click.echo(f"Generating {generate_data} sample expense records...")
|
64
65
|
generator = EnhancedExpenseGenerator(config.database_url)
|
65
66
|
|
@@ -207,6 +208,7 @@ def start(host, port, generate_data, no_data, clear_data):
|
|
207
208
|
# Generate data if not explicitly disabled
|
208
209
|
if not no_data:
|
209
210
|
click.echo("🔍 Checking database setup...")
|
211
|
+
click.echo(f"Using database: {config.database_url}")
|
210
212
|
click.echo(f"Generating {generate_data} sample expense records...")
|
211
213
|
generator = EnhancedExpenseGenerator(config.database_url)
|
212
214
|
|
@@ -258,6 +260,12 @@ def help():
|
|
258
260
|
|
259
261
|
This is a modern AI-powered expense analysis application with RAG capabilities.
|
260
262
|
|
263
|
+
PREREQUISITES:
|
264
|
+
--------------
|
265
|
+
- CockroachDB v25.2.4+ (recommended: v25.3.1)
|
266
|
+
- Vector index feature enabled: SET CLUSTER SETTING feature.vector_index.enabled = true;
|
267
|
+
- Start single node: cockroach start-single-node --insecure --store=./cockroach-data --listen-addr=localhost:26257 --http-addr=localhost:8080 --background
|
268
|
+
|
261
269
|
QUICK START:
|
262
270
|
-----------
|
263
271
|
1. Set up your environment variables:
|
@@ -331,14 +331,31 @@ class EnhancedExpenseGenerator:
|
|
331
331
|
def get_expense_count(self) -> int:
|
332
332
|
"""Get the current number of expenses in the database."""
|
333
333
|
try:
|
334
|
+
# Ensure tables exist first
|
335
|
+
self._ensure_tables_exist()
|
336
|
+
|
334
337
|
from sqlalchemy import text
|
335
338
|
with self.engine.connect() as conn:
|
336
339
|
result = conn.execute(text("SELECT COUNT(*) FROM expenses"))
|
337
340
|
return result.scalar()
|
338
341
|
except Exception as e:
|
339
342
|
print(f"Error getting expense count: {e}")
|
343
|
+
if "connection" in str(e).lower() or "refused" in str(e).lower():
|
344
|
+
print("💡 Make sure CockroachDB is running:")
|
345
|
+
print(" cockroach start --insecure")
|
346
|
+
print(" Or set DATABASE_URL to your database connection string")
|
340
347
|
return 0
|
341
348
|
|
349
|
+
def _ensure_tables_exist(self):
|
350
|
+
"""Ensure database tables exist."""
|
351
|
+
try:
|
352
|
+
from ..utils.database import DatabaseManager
|
353
|
+
db_manager = DatabaseManager(self.database_url)
|
354
|
+
db_manager.create_tables()
|
355
|
+
except Exception as e:
|
356
|
+
print(f"Error creating tables: {e}")
|
357
|
+
# Continue anyway - tables might already exist
|
358
|
+
|
342
359
|
def generate_and_save(
|
343
360
|
self,
|
344
361
|
count: int,
|
@@ -70,9 +70,9 @@ class VectorSearchEngine:
|
|
70
70
|
merchant,
|
71
71
|
shopping_type,
|
72
72
|
expense_amount,
|
73
|
-
embedding
|
73
|
+
embedding <-> :search_embedding as similarity_score
|
74
74
|
FROM expenses
|
75
|
-
ORDER BY embedding
|
75
|
+
ORDER BY embedding <-> :search_embedding
|
76
76
|
LIMIT :limit
|
77
77
|
""")
|
78
78
|
|
@@ -465,7 +465,7 @@ class VectorSearchEngine:
|
|
465
465
|
merchant,
|
466
466
|
expense_amount,
|
467
467
|
expense_date,
|
468
|
-
1 - (embedding
|
468
|
+
1 - (embedding <-> %s) as similarity_score,
|
469
469
|
shopping_type,
|
470
470
|
payment_method,
|
471
471
|
recurring,
|
@@ -620,7 +620,7 @@ def create_app() -> Flask:
|
|
620
620
|
def ai_status():
|
621
621
|
"""Endpoint to check the status of AI services and database."""
|
622
622
|
# Check database status
|
623
|
-
db_connected, db_message, table_exists, record_count =
|
623
|
+
db_connected, db_message, table_exists, record_count = check_database_connection(config.database_url)
|
624
624
|
|
625
625
|
status = {
|
626
626
|
'current_service': config.ai_service,
|
{banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17/banko_ai_assistant.egg-info}/PKG-INFO
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: banko-ai-assistant
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.17
|
4
4
|
Summary: AI-powered expense analysis and RAG system with CockroachDB vector search and multi-provider AI support
|
5
5
|
Author-email: Virag Tripathi <virag.tripathi@gmail.com>
|
6
6
|
License-Expression: MIT
|
@@ -30,9 +30,9 @@ Requires-Dist: jinja2<4.0.0,>=3.1.0
|
|
30
30
|
Requires-Dist: psycopg2-binary<3.0.0,>=2.9.0
|
31
31
|
Requires-Dist: sqlalchemy<3.0.0,>=2.0.0
|
32
32
|
Requires-Dist: sqlalchemy-cockroachdb<3.0.0,>=2.0.0
|
33
|
-
Requires-Dist: sentence-transformers<
|
34
|
-
Requires-Dist: boto3<1.
|
35
|
-
Requires-Dist: botocore<1.
|
33
|
+
Requires-Dist: sentence-transformers<4.0.0,>=3.1.0
|
34
|
+
Requires-Dist: boto3<1.41.0,>=1.40.0
|
35
|
+
Requires-Dist: botocore<1.41.0,>=1.40.0
|
36
36
|
Requires-Dist: openai<2.0.0,>=1.11.0
|
37
37
|
Requires-Dist: requests<3.0.0,>=2.32.4
|
38
38
|
Requires-Dist: numpy<2.0.0,>=1.26.0
|
@@ -76,9 +76,48 @@ A modern AI-powered expense analysis application with Retrieval-Augmented Genera
|
|
76
76
|
|
77
77
|
### Prerequisites
|
78
78
|
|
79
|
-
- Python 3.8
|
80
|
-
- CockroachDB (
|
81
|
-
-
|
79
|
+
- **Python 3.8+**
|
80
|
+
- **CockroachDB v25.2.4+** (recommended: [v25.3.1](https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1))
|
81
|
+
- **Vector Index Feature Enabled** (required for vector search)
|
82
|
+
- **AI Provider API Key** (OpenAI, AWS, IBM Watsonx, or Google Gemini)
|
83
|
+
|
84
|
+
#### CockroachDB Setup
|
85
|
+
|
86
|
+
1. **Download and Install CockroachDB**:
|
87
|
+
```bash
|
88
|
+
# Download CockroachDB v25.3.1 (recommended)
|
89
|
+
# Visit: https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1
|
90
|
+
|
91
|
+
# Or install via package manager
|
92
|
+
brew install cockroachdb/tap/cockroach # macOS
|
93
|
+
```
|
94
|
+
|
95
|
+
2. **Start CockroachDB Single Node**:
|
96
|
+
```bash
|
97
|
+
# Start a single-node cluster (for development)
|
98
|
+
cockroach start-single-node \
|
99
|
+
--insecure \
|
100
|
+
--store=./cockroach-data \
|
101
|
+
--listen-addr=localhost:26257 \
|
102
|
+
--http-addr=localhost:8080 \
|
103
|
+
--background
|
104
|
+
```
|
105
|
+
|
106
|
+
3. **Enable Vector Index Feature**:
|
107
|
+
```sql
|
108
|
+
-- Connect to the database
|
109
|
+
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
110
|
+
|
111
|
+
-- Enable vector index feature (required for vector search)
|
112
|
+
SET CLUSTER SETTING feature.vector_index.enabled = true;
|
113
|
+
```
|
114
|
+
|
115
|
+
4. **Verify Setup**:
|
116
|
+
```sql
|
117
|
+
-- Check if vector index is enabled
|
118
|
+
SHOW CLUSTER SETTING feature.vector_index.enabled;
|
119
|
+
-- Should return: true
|
120
|
+
```
|
82
121
|
|
83
122
|
### Installation
|
84
123
|
|
@@ -94,7 +133,7 @@ export WATSONX_MODEL_ID="openai/gpt-oss-120b"
|
|
94
133
|
export DATABASE_URL="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
95
134
|
|
96
135
|
# Run the application
|
97
|
-
python -m
|
136
|
+
python -m banko-ai
|
98
137
|
```
|
99
138
|
|
100
139
|
#### Option 2: Development Installation
|
@@ -230,14 +269,14 @@ banko-ai help
|
|
230
269
|
|
231
270
|
## 🔌 API Endpoints
|
232
271
|
|
233
|
-
| Endpoint
|
234
|
-
|
235
|
-
| `/`
|
236
|
-
| `/api/health`
|
237
|
-
| `/api/ai-providers` | GET
|
238
|
-
| `/api/models`
|
239
|
-
| `/api/search`
|
240
|
-
| `/api/rag`
|
272
|
+
| Endpoint | Method | Description |
|
273
|
+
|---------------------|--------|---------------------------------------|
|
274
|
+
| `/` | GET | Web interface |
|
275
|
+
| `/api/health` | GET | System health check |
|
276
|
+
| `/api/ai-providers` | GET | Available AI providers |
|
277
|
+
| `/api/models` | GET | Available models for current provider |
|
278
|
+
| `/api/search` | POST | Vector search expenses |
|
279
|
+
| `/api/rag` | POST | RAG-based Q&A |
|
241
280
|
|
242
281
|
### API Examples
|
243
282
|
|
@@ -366,10 +405,36 @@ banko_ai/
|
|
366
405
|
|
367
406
|
### Common Issues
|
368
407
|
|
408
|
+
**CockroachDB Version Issues**
|
409
|
+
```bash
|
410
|
+
# Check CockroachDB version (must be v25.2.4+)
|
411
|
+
cockroach version
|
412
|
+
|
413
|
+
# If version is too old, download v25.3.1:
|
414
|
+
# https://www.cockroachlabs.com/docs/releases/v25.3#v25-3-1
|
415
|
+
```
|
416
|
+
|
417
|
+
**Vector Index Feature Not Enabled**
|
418
|
+
```bash
|
419
|
+
# Connect to database and enable vector index feature
|
420
|
+
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable"
|
421
|
+
|
422
|
+
# Enable vector index feature
|
423
|
+
SET CLUSTER SETTING feature.vector_index.enabled = true;
|
424
|
+
|
425
|
+
# Verify it's enabled
|
426
|
+
SHOW CLUSTER SETTING feature.vector_index.enabled;
|
427
|
+
```
|
428
|
+
|
369
429
|
**Database Connection Error**
|
370
430
|
```bash
|
371
|
-
#
|
372
|
-
cockroach start
|
431
|
+
# Start CockroachDB single node
|
432
|
+
cockroach start-single-node \
|
433
|
+
--insecure \
|
434
|
+
--store=./cockroach-data \
|
435
|
+
--listen-addr=localhost:26257 \
|
436
|
+
--http-addr=localhost:8080 \
|
437
|
+
--background
|
373
438
|
|
374
439
|
# Verify database exists
|
375
440
|
cockroach sql --url="cockroachdb://root@localhost:26257/defaultdb?sslmode=disable" --execute "SHOW TABLES;"
|
@@ -417,4 +482,4 @@ For issues and questions:
|
|
417
482
|
|
418
483
|
---
|
419
484
|
|
420
|
-
**Built with ❤️ using CockroachDB, Flask, and modern AI technologies**
|
485
|
+
**Built with ❤️ using CockroachDB, Flask, and modern AI technologies such as **
|
{banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai_assistant.egg-info/requires.txt
RENAMED
@@ -4,9 +4,9 @@ jinja2<4.0.0,>=3.1.0
|
|
4
4
|
psycopg2-binary<3.0.0,>=2.9.0
|
5
5
|
sqlalchemy<3.0.0,>=2.0.0
|
6
6
|
sqlalchemy-cockroachdb<3.0.0,>=2.0.0
|
7
|
-
sentence-transformers<
|
8
|
-
boto3<1.
|
9
|
-
botocore<1.
|
7
|
+
sentence-transformers<4.0.0,>=3.1.0
|
8
|
+
boto3<1.41.0,>=1.40.0
|
9
|
+
botocore<1.41.0,>=1.40.0
|
10
10
|
openai<2.0.0,>=1.11.0
|
11
11
|
requests<3.0.0,>=2.32.4
|
12
12
|
numpy<2.0.0,>=1.26.0
|
@@ -7,7 +7,7 @@ py-modules = []
|
|
7
7
|
|
8
8
|
[project]
|
9
9
|
name = "banko-ai-assistant"
|
10
|
-
version = "1.0.
|
10
|
+
version = "1.0.17"
|
11
11
|
description = "AI-powered expense analysis and RAG system with CockroachDB vector search and multi-provider AI support"
|
12
12
|
authors = [
|
13
13
|
{ name="Virag Tripathi", email="virag.tripathi@gmail.com" }
|
@@ -37,9 +37,9 @@ dependencies = [
|
|
37
37
|
"psycopg2-binary>=2.9.0,<3.0.0",
|
38
38
|
"sqlalchemy>=2.0.0,<3.0.0",
|
39
39
|
"sqlalchemy-cockroachdb>=2.0.0,<3.0.0",
|
40
|
-
"sentence-transformers>=
|
41
|
-
"boto3>=1.
|
42
|
-
"botocore>=1.
|
40
|
+
"sentence-transformers>=3.1.0,<4.0.0",
|
41
|
+
"boto3>=1.40.0,<1.41.0",
|
42
|
+
"botocore>=1.40.0,<1.41.0",
|
43
43
|
"openai>=1.11.0,<2.0.0",
|
44
44
|
"requests>=2.32.4,<3.0.0",
|
45
45
|
"numpy>=1.26.0,<2.0.0",
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/aws_provider.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/gemini_provider.py
RENAMED
File without changes
|
{banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/openai_provider.py
RENAMED
File without changes
|
{banko_ai_assistant-1.0.15 → banko_ai_assistant-1.0.17}/banko_ai/ai_providers/watsonx_provider.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|