ai-parrot 0.3.10__tar.gz → 0.3.11__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.

Potentially problematic release.


This version of ai-parrot might be problematic. Click here for more details.

Files changed (161) hide show
  1. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/PKG-INFO +3 -1
  2. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/ai_parrot.egg-info/PKG-INFO +3 -1
  3. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/ai_parrot.egg-info/SOURCES.txt +1 -0
  4. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/ai_parrot.egg-info/requires.txt +2 -0
  5. ai_parrot-0.3.11/examples/askbuddy/load_pdf.py +52 -0
  6. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/audio.py +2 -2
  7. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/excel.py +2 -2
  8. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/pdf.py +4 -4
  9. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/pdfchapters.py +1 -1
  10. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/pdffn.py +1 -1
  11. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/pdfimages.py +2 -2
  12. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/pdfmark.py +1 -1
  13. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/pdftables.py +1 -1
  14. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/qa.py +1 -1
  15. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/rtd.py +1 -1
  16. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/txt.py +1 -1
  17. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/videolocal.py +2 -2
  18. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/vimeo.py +2 -2
  19. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/web.py +1 -1
  20. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/web_base.py +1 -1
  21. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/word.py +1 -1
  22. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/youtube.py +4 -4
  23. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/stores/milvus.py +5 -5
  24. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/version.py +1 -1
  25. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/setup.py +2 -0
  26. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/.flake8 +0 -0
  27. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/.github/dependabot.yml +0 -0
  28. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/.github/workflows/codeql-analysis.yml +0 -0
  29. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/.github/workflows/release.yml +0 -0
  30. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/.gitignore +0 -0
  31. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/.isort.cfg +0 -0
  32. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/.pylintrc +0 -0
  33. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/INSTALL +0 -0
  34. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/LICENSE +0 -0
  35. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/Makefile +0 -0
  36. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/README.md +0 -0
  37. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/SECURITY.md +0 -0
  38. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/ai_parrot.egg-info/dependency_links.txt +0 -0
  39. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/ai_parrot.egg-info/top_level.txt +0 -0
  40. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/app.py +0 -0
  41. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/documents/AR_Certification_Skill_Practice_Scorecard_EXAMPLE.pdf +0 -0
  42. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/documents/Day 1_Essentials_AR_PPT.pdf +0 -0
  43. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/documents/ex-code-loaders.txt +0 -0
  44. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/documents/video_2024-09-11_19-43-58.mp3 +0 -0
  45. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/documents/video_2024-09-11_19-43-58.mp4 +0 -0
  46. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/documents/video_2024-09-11_19-43-58.vtt +0 -0
  47. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/navigator-ssl.ini +0 -0
  48. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/navigator.ini +0 -0
  49. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/ssl/domain.ext +0 -0
  50. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/ssl/navigator.local.crt +0 -0
  51. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/ssl/navigator.local.csr +0 -0
  52. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/ssl/navigator.local.key +0 -0
  53. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/ssl/rootCA.crt +0 -0
  54. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/ssl/rootCA.key +0 -0
  55. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/etc/ssl/rootCA.srl +0 -0
  56. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/examples/analyze_video.py +0 -0
  57. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/examples/askbuddy/create_bot.py +0 -0
  58. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/examples/check_bot.py +0 -0
  59. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/examples/extract_frames.py +0 -0
  60. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/examples/load_pdf.py +0 -0
  61. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/examples/test_bot.py +0 -0
  62. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/examples/test_question.py +0 -0
  63. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/mypy.ini +0 -0
  64. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/__init__.py +0 -0
  65. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/__init__.py +0 -0
  66. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/abstract.py +0 -0
  67. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/asktroc.py +0 -0
  68. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/base.py +0 -0
  69. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/basic.py +0 -0
  70. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/bose.py +0 -0
  71. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/cody.py +0 -0
  72. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/copilot.py +0 -0
  73. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/dataframe.py +0 -0
  74. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/hragents.py +0 -0
  75. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/odoo.py +0 -0
  76. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/retrievals/__init__.py +0 -0
  77. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/chatbots/retrievals/constitutional.py +0 -0
  78. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/conf.py +0 -0
  79. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/__init__.py +0 -0
  80. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/__init__.py +0 -0
  81. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/bing.py +0 -0
  82. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/config.py +0 -0
  83. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/duckgo.py +0 -0
  84. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/file.py +0 -0
  85. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/google.py +0 -0
  86. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/gtrends.py +0 -0
  87. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/md2pdf.py +0 -0
  88. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/rag.py +0 -0
  89. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/search.py +0 -0
  90. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/crew/tools/url.py +0 -0
  91. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/exceptions.c +0 -0
  92. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/exceptions.pyx +0 -0
  93. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/handlers/__init__.py +0 -0
  94. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/handlers/bots.py +0 -0
  95. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/handlers/chat.py +0 -0
  96. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/interfaces/__init__.py +0 -0
  97. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/interfaces/database.py +0 -0
  98. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/__init__.py +0 -0
  99. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/abstract.py +0 -0
  100. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/anthropic.py +0 -0
  101. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/google.py +0 -0
  102. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/groq.py +0 -0
  103. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/hf.py +0 -0
  104. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/openai.py +0 -0
  105. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/pipes.py +0 -0
  106. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/llms/vertex.py +0 -0
  107. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/__init__.py +0 -0
  108. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/abstract.py +0 -0
  109. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/basepdf.py +0 -0
  110. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/basevideo.py +0 -0
  111. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/csv.py +0 -0
  112. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/dir.py +0 -0
  113. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/github.py +0 -0
  114. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/handlers/__init__.py +0 -0
  115. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/handlers/data.py +0 -0
  116. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/image.py +0 -0
  117. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/json.py +0 -0
  118. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/ppt.py +0 -0
  119. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/repo.py +0 -0
  120. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/utils/__init__.py +0 -0
  121. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/utils/models.py +0 -0
  122. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/loaders/video.py +0 -0
  123. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/manager.py +0 -0
  124. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/models.py +0 -0
  125. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/py.typed +0 -0
  126. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/stores/__init__.py +0 -0
  127. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/stores/abstract.py +0 -0
  128. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/stores/qdrant.py +0 -0
  129. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/__init__.py +0 -0
  130. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/abstract.py +0 -0
  131. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/asknews.py +0 -0
  132. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/bing.py +0 -0
  133. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/duck.py +0 -0
  134. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/google.py +0 -0
  135. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/stack.py +0 -0
  136. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/weather.py +0 -0
  137. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/wikipedia.py +0 -0
  138. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/tools/zipcode.py +0 -0
  139. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/__init__.py +0 -0
  140. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/parsers/__init__.py +0 -0
  141. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/parsers/toml.c +0 -0
  142. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/parsers/toml.pyx +0 -0
  143. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/toml.py +0 -0
  144. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/types.cpp +0 -0
  145. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/types.pyx +0 -0
  146. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/parrot/utils/uv.py +0 -0
  147. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/pyproject.toml +0 -0
  148. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/pytest.ini +0 -0
  149. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/requirements/requirements-dev.txt +0 -0
  150. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/resources/__init__.py +0 -0
  151. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/resources/quick.py +0 -0
  152. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/resources/users/__init__.py +0 -0
  153. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/resources/users/handlers.py +0 -0
  154. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/resources/users/models.py +0 -0
  155. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/run.py +0 -0
  156. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/settings/__init__.py +0 -0
  157. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/settings/settings.py +0 -0
  158. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/setup.cfg +0 -0
  159. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/templates/.compiled +0 -0
  160. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/templates/README.md +0 -0
  161. {ai_parrot-0.3.10 → ai_parrot-0.3.11}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ai-parrot
3
- Version: 0.3.10
3
+ Version: 0.3.11
4
4
  Summary: Live Chatbots based on Langchain chatbots and Agents Integrated into Navigator Framework or used into aiohttp applications.
5
5
  Home-page: https://github.com/phenobarbital/ai-parrot
6
6
  Author: Jesus Lara
@@ -110,6 +110,8 @@ Requires-Dist: ftfy==6.2.3; extra == "loaders"
110
110
  Requires-Dist: librosa==0.10.1; extra == "loaders"
111
111
  Requires-Dist: XlsxWriter==3.2.0; extra == "loaders"
112
112
  Requires-Dist: timm==1.0.9; extra == "loaders"
113
+ Requires-Dist: simsimd==4.3.1; extra == "loaders"
114
+ Requires-Dist: opencv-python==4.10.0.84; extra == "loaders"
113
115
  Requires-Dist: easyocr==1.7.1; extra == "loaders"
114
116
  Provides-Extra: anthropic
115
117
  Requires-Dist: langchain-anthropic==0.1.11; extra == "anthropic"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ai-parrot
3
- Version: 0.3.10
3
+ Version: 0.3.11
4
4
  Summary: Live Chatbots based on Langchain chatbots and Agents Integrated into Navigator Framework or used into aiohttp applications.
5
5
  Home-page: https://github.com/phenobarbital/ai-parrot
6
6
  Author: Jesus Lara
@@ -110,6 +110,8 @@ Requires-Dist: ftfy==6.2.3; extra == "loaders"
110
110
  Requires-Dist: librosa==0.10.1; extra == "loaders"
111
111
  Requires-Dist: XlsxWriter==3.2.0; extra == "loaders"
112
112
  Requires-Dist: timm==1.0.9; extra == "loaders"
113
+ Requires-Dist: simsimd==4.3.1; extra == "loaders"
114
+ Requires-Dist: opencv-python==4.10.0.84; extra == "loaders"
113
115
  Requires-Dist: easyocr==1.7.1; extra == "loaders"
114
116
  Provides-Extra: anthropic
115
117
  Requires-Dist: langchain-anthropic==0.1.11; extra == "anthropic"
@@ -44,6 +44,7 @@ examples/load_pdf.py
44
44
  examples/test_bot.py
45
45
  examples/test_question.py
46
46
  examples/askbuddy/create_bot.py
47
+ examples/askbuddy/load_pdf.py
47
48
  parrot/__init__.py
48
49
  parrot/conf.py
49
50
  parrot/exceptions.c
@@ -107,6 +107,8 @@ ftfy==6.2.3
107
107
  librosa==0.10.1
108
108
  XlsxWriter==3.2.0
109
109
  timm==1.0.9
110
+ simsimd==4.3.1
111
+ opencv-python==4.10.0.84
110
112
  easyocr==1.7.1
111
113
 
112
114
  [milvus]
@@ -0,0 +1,52 @@
1
+ """
2
+ Load RFP documents into bot.
3
+ """
4
+ import asyncio
5
+ from navconfig import BASE_DIR
6
+ from pprint import pprint
7
+ from pathlib import Path
8
+ from parrot.chatbots.basic import Chatbot
9
+ from parrot.llms.vertex import VertexLLM
10
+ from parrot.loaders import (
11
+ PDFLoader
12
+ )
13
+
14
+ async def get_agent():
15
+ llm = VertexLLM(
16
+ model='gemini-1.5-pro',
17
+ temperature=0.1,
18
+ top_k=30,
19
+ Top_p=0.5,
20
+ )
21
+ agent = Chatbot(
22
+ name='AskBuddy',
23
+ llm=llm
24
+ )
25
+ # Add LLM
26
+ await agent.configure()
27
+ # directory = BASE_DIR.joinpath("docs", "askbuddy")
28
+ directory = Path('/home/jesuslara/proyectos/navigator/navigator-ai').joinpath("docs", "askbuddy")
29
+ for filename in directory.glob('*.pdf'):
30
+ # Loading File by File to avoid overheat in database
31
+ print(':: Processing: ', filename)
32
+ # PDF Files
33
+ loader = PDFLoader(
34
+ filename,
35
+ source_type=f"MSO {filename.name}",
36
+ llm=llm.get_llm(),
37
+ language="en",
38
+ parse_images=False,
39
+ page_as_images=True
40
+ )
41
+ docs = loader.load()
42
+ pprint(docs)
43
+ await agent.load_documents(
44
+ docs
45
+ )
46
+ return agent
47
+
48
+
49
+
50
+
51
+ if __name__ == "__main__":
52
+ agent = asyncio.run(get_agent())
@@ -28,7 +28,7 @@ class AudioLoader(BaseVideoLoader):
28
28
  metadata = {
29
29
  "source": f"{path}",
30
30
  "url": f"{path.name}",
31
- "index": path.stem,
31
+ # "index": path.stem,
32
32
  "filename": f"{path}",
33
33
  "question": '',
34
34
  "answer": '',
@@ -71,7 +71,7 @@ class AudioLoader(BaseVideoLoader):
71
71
  docs = []
72
72
  for chunk in dialogs:
73
73
  _meta = {
74
- "index": f"{path.stem}:{chunk['id']}",
74
+ # "index": f"{path.stem}:{chunk['id']}",
75
75
  "document_meta": {
76
76
  "start": f"{chunk['start_time']}",
77
77
  "end": f"{chunk['end_time']}",
@@ -284,7 +284,7 @@ class ExcelLoader(AbstractLoader):
284
284
  df = self.unique_columns(df)
285
285
  metadata = {
286
286
  "url": '',
287
- "index": '',
287
+ # "index": '',
288
288
  "source": str(path.name),
289
289
  "filename": path.name,
290
290
  "question": '',
@@ -309,7 +309,7 @@ class ExcelLoader(AbstractLoader):
309
309
  idk = row[col]
310
310
  break
311
311
  _data = {
312
- "index": idk,
312
+ # "index": idk,
313
313
  "data": rw,
314
314
  "document_meta": {
315
315
  "row_index": idx,
@@ -336,7 +336,7 @@ class PDFLoader(BasePDF):
336
336
  "url": f"{path}:#{page_num}",
337
337
  "source": f"{path.name} Page.#{page_num}",
338
338
  "filename": path.name,
339
- "index": f"{page_num}",
339
+ # "index": f"{page_num}",
340
340
  "type": 'pdf',
341
341
  "question": '',
342
342
  "answer": '',
@@ -400,7 +400,7 @@ class PDFLoader(BasePDF):
400
400
  "url": url,
401
401
  "source": f"{path.name} Page.#{page_num}",
402
402
  "filename": path.name,
403
- "index": f"{path.name}:{page_num}",
403
+ # "index": f"{path.name}:{page_num}",
404
404
  "question": '',
405
405
  "answer": '',
406
406
  "type": 'image',
@@ -430,7 +430,7 @@ class PDFLoader(BasePDF):
430
430
  "url": f"{path.name} Page.#{page_num} Table.#{tab_idx}",
431
431
  "source": f"{path.name} Page.#{page_num} Table.#{tab_idx}",
432
432
  "filename": path.name,
433
- "index": f"{path.name}:{page_num}",
433
+ # "index": f"{path.name}:{page_num}",
434
434
  "question": '',
435
435
  "answer": '',
436
436
  "type": 'table',
@@ -476,7 +476,7 @@ class PDFLoader(BasePDF):
476
476
  "url": url,
477
477
  "source": f"{path.name} Page.#{page_num}",
478
478
  "filename": path.name,
479
- "index": f"{path.name}:{page_num}",
479
+ # "index": f"{path.name}:{page_num}",
480
480
  "question": '',
481
481
  "answer": '',
482
482
  "type": 'page',
@@ -78,7 +78,7 @@ class PDFChapterLoader(BasePDF):
78
78
  page_number = page_num + 1
79
79
  metadata = {
80
80
  "url": '',
81
- "index": f"{path.name} #{page_number}",
81
+ # "index": f"{path.name} #{page_number}",
82
82
  "source": f"{path.name} #{page_number}",
83
83
  "filename": path.name,
84
84
  "source_type": self._source_type,
@@ -55,7 +55,7 @@ class PDFFnLoader(BasePDF):
55
55
  n = page_number + 1
56
56
  return {
57
57
  "url": '',
58
- "index": f"{path.name} #{page_number}",
58
+ # "index": f"{path.name} #{page_number}",
59
59
  "source": f"{path.name} #{page_number}",
60
60
  "filename": path.name,
61
61
  "source_type": self._source_type,
@@ -124,7 +124,7 @@ class PDFImageLoader(BasePDF):
124
124
  }
125
125
  for idx, chunk in enumerate(self._splitter.split_text(md_text)):
126
126
  _info = {
127
- "index": f"{idx}",
127
+ # "index": f"{idx}",
128
128
  **metadata
129
129
  }
130
130
  docs.append(
@@ -178,7 +178,7 @@ class PDFImageLoader(BasePDF):
178
178
  _meta = {
179
179
  "url": f"{url}",
180
180
  "filename": str(path.name),
181
- "index": f"Page {page_num}, part: {idx}",
181
+ # "index": f"Page {page_num}, part: {idx}",
182
182
  "source": str(path.name),
183
183
  "type": 'pdf',
184
184
  "question": prompt_text,
@@ -74,7 +74,7 @@ class PDFMarkdownLoader(BasePDF):
74
74
  }
75
75
  for idx, chunk in enumerate(self._splitter.split_text(md_text)):
76
76
  _info = {
77
- "index": f"{idx}",
77
+ # "index": f"{idx}",
78
78
  **metadata
79
79
  }
80
80
  docs.append(
@@ -91,7 +91,7 @@ class PDFTablesLoader(BasePDF):
91
91
  "url": '',
92
92
  "source": f"{path.name} Page.#{page} Table.#{table_idx}",
93
93
  "filename": path.name,
94
- "index": f"{path.name}:Table:{table_idx}",
94
+ # "index": f"{path.name}:Table:{table_idx}",
95
95
  "question": '',
96
96
  "answer": '',
97
97
  "type": 'table',
@@ -46,7 +46,7 @@ class QAFileLoader(AbstractLoader):
46
46
  page_content=f"**Question:** {row[q]}: **Answer:** {row[a]}",
47
47
  metadata={
48
48
  "url": '',
49
- "index": f"{path.name} #{idx}",
49
+ # "index": f"{path.name} #{idx}",
50
50
  "source": f"{path.name} Row.#{idx}",
51
51
  "filename": f"{path.name}",
52
52
  "question": row[q],
@@ -47,7 +47,7 @@ class ReadTheDocsLoader(AbstractLoader):
47
47
  metadata = {
48
48
  "source": url,
49
49
  "url": url,
50
- "index": suffix,
50
+ # "index": suffix,
51
51
  "filename": src,
52
52
  "question": '',
53
53
  "answer": '',
@@ -44,7 +44,7 @@ class TXTLoader(AbstractLoader):
44
44
  page_content=text,
45
45
  metadata={
46
46
  "url": '',
47
- "index": str(path.name),
47
+ # "index": str(path.name),
48
48
  "source": str(path),
49
49
  "filename": str(path.name),
50
50
  "summary": '',
@@ -45,7 +45,7 @@ class VideoLocalLoader(BaseVideoLoader):
45
45
  "url": f"{path.name}",
46
46
  "source": f"{path}",
47
47
  "filename": f"{path}",
48
- "index": path.stem,
48
+ # "index": path.stem,
49
49
  "question": '',
50
50
  "answer": '',
51
51
  'type': 'video_transcript',
@@ -96,7 +96,7 @@ class VideoLocalLoader(BaseVideoLoader):
96
96
  docs = []
97
97
  for chunk in dialogs:
98
98
  _meta = {
99
- "index": f"{path.stem}:{chunk['id']}",
99
+ # "index": f"{path.stem}:{chunk['id']}",
100
100
  "document_meta": {
101
101
  "start": f"{chunk['start_time']}",
102
102
  "end": f"{chunk['end_time']}",
@@ -13,7 +13,7 @@ class VimeoLoader(YoutubeLoader):
13
13
  metadata = {
14
14
  "source": url,
15
15
  "url": url,
16
- "index": url,
16
+ # "index": url,
17
17
  "filename": video_title,
18
18
  "question": '',
19
19
  "answer": '',
@@ -73,7 +73,7 @@ class VimeoLoader(YoutubeLoader):
73
73
  dialogs = self.transcript_to_blocks(transcript_whisper)
74
74
  for chunk in dialogs:
75
75
  _meta = {
76
- "index": f"{video_title}:{chunk['id']}",
76
+ # "index": f"{video_title}:{chunk['id']}",
77
77
  "document_meta": {
78
78
  "start": f"{chunk['start_time']}",
79
79
  "end": f"{chunk['end_time']}",
@@ -164,7 +164,7 @@ class WebLoader(AbstractLoader):
164
164
  )
165
165
  metadata = {
166
166
  "source": url,
167
- "index": page_title,
167
+ # "index": page_title,
168
168
  "url": url,
169
169
  "filename": page_title,
170
170
  "question": '',
@@ -75,7 +75,7 @@ class WebBaseLoader(AbstractLoader):
75
75
  metadata = {
76
76
  "url": url,
77
77
  "source": url,
78
- "index": "",
78
+ # "index": "",
79
79
  "filename": '',
80
80
  "type": 'webpage',
81
81
  "question": '',
@@ -58,7 +58,7 @@ class MSWordLoader(AbstractLoader):
58
58
  "url": '',
59
59
  "source": path.name,
60
60
  "filename": path.name,
61
- "index": str(path.name),
61
+ # "index": str(path.name),
62
62
  "type": 'document',
63
63
  "question": '',
64
64
  "answer": '',
@@ -71,7 +71,7 @@ class YoutubeLoader(VideoLoader):
71
71
  metadata = {
72
72
  "url": f"{url}",
73
73
  "source": f"{url}",
74
- "index": video_title,
74
+ # "index": video_title,
75
75
  "filename": video_title,
76
76
  "question": '',
77
77
  "answer": '',
@@ -103,7 +103,7 @@ class YoutubeLoader(VideoLoader):
103
103
  dialogs = self.transcript_to_blocks(transcript_whisper)
104
104
  for chunk in dialogs:
105
105
  _meta = {
106
- "index": f"{video_title}:{chunk['id']}",
106
+ # "index": f"{video_title}:{chunk['id']}",
107
107
  "document_meta": {
108
108
  "start": f"{chunk['start_time']}",
109
109
  "end": f"{chunk['end_time']}",
@@ -150,7 +150,7 @@ class YoutubeLoader(VideoLoader):
150
150
  for doc in docs:
151
151
  doc.metadata['source_type'] = self._source_type
152
152
  doc.metadata['summary'] = f"{summary!s}"
153
- doc.metadata['index'] = ''
153
+ # doc.metadata['index'] = ''
154
154
  doc.metadata['filename'] = ''
155
155
  doc.metadata['question'] = ''
156
156
  doc.metadata['answer'] = ''
@@ -171,7 +171,7 @@ class YoutubeLoader(VideoLoader):
171
171
  metadata = {
172
172
  "source": url,
173
173
  "url": url,
174
- "index": '',
174
+ # "index": '',
175
175
  "filename": '',
176
176
  "question": '',
177
177
  "answer": '',
@@ -350,11 +350,11 @@ class MilvusStore(AbstractStore):
350
350
  auto_id=True,
351
351
  max_length=100
352
352
  )
353
- schema.add_field(
354
- field_name="index",
355
- datatype=DataType.VARCHAR,
356
- max_length=65535
357
- )
353
+ # schema.add_field(
354
+ # field_name="index",
355
+ # datatype=DataType.VARCHAR,
356
+ # max_length=65535
357
+ # )
358
358
  schema.add_field(
359
359
  field_name="url",
360
360
  datatype=DataType.VARCHAR,
@@ -3,7 +3,7 @@
3
3
  __title__ = "ai-parrot"
4
4
  __description__ = "Live Chatbots based on Langchain chatbots and Agents \
5
5
  Integrated into Navigator Framework or used into aiohttp applications."
6
- __version__ = "0.3.10"
6
+ __version__ = "0.3.11"
7
7
  __author__ = "Jesus Lara"
8
8
  __author_email__ = "jesuslarag@gmail.com"
9
9
  __license__ = "MIT"
@@ -226,6 +226,8 @@ setup(
226
226
  "XlsxWriter==3.2.0",
227
227
  # "xformers==0.0.27.post2",
228
228
  "timm==1.0.9",
229
+ "simsimd==4.3.1",
230
+ "opencv-python==4.10.0.84",
229
231
  "easyocr==1.7.1"
230
232
  ],
231
233
  "anthropic": [
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