mixpeek 0.1.0__py3-none-any.whl → 0.6.1__py3-none-any.whl

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.
Files changed (73) hide show
  1. mixpeek/__init__.py +95 -71
  2. mixpeek/base_client.py +128 -0
  3. mixpeek/client.py +65 -0
  4. mixpeek/core/__init__.py +25 -0
  5. mixpeek/core/api_error.py +15 -0
  6. mixpeek/core/client_wrapper.py +83 -0
  7. mixpeek/core/datetime_utils.py +28 -0
  8. mixpeek/core/file.py +38 -0
  9. mixpeek/core/http_client.py +130 -0
  10. mixpeek/core/jsonable_encoder.py +103 -0
  11. mixpeek/core/remove_none_from_dict.py +11 -0
  12. mixpeek/core/request_options.py +32 -0
  13. mixpeek/errors/__init__.py +17 -0
  14. mixpeek/errors/bad_request_error.py +9 -0
  15. mixpeek/errors/forbidden_error.py +9 -0
  16. mixpeek/errors/internal_server_error.py +9 -0
  17. mixpeek/errors/not_found_error.py +9 -0
  18. mixpeek/errors/unauthorized_error.py +9 -0
  19. mixpeek/errors/unprocessable_entity_error.py +9 -0
  20. mixpeek/generators/__init__.py +2 -0
  21. mixpeek/generators/client.py +239 -0
  22. mixpeek/parse/__init__.py +2 -0
  23. mixpeek/parse/client.py +349 -0
  24. mixpeek/parse_client.py +14 -0
  25. mixpeek/pipelines/__init__.py +2 -0
  26. mixpeek/pipelines/client.py +546 -0
  27. mixpeek/py.typed +0 -0
  28. mixpeek/storage/__init__.py +2 -0
  29. mixpeek/storage/client.py +254 -0
  30. mixpeek/types/__init__.py +73 -0
  31. mixpeek/types/audio_params.py +29 -0
  32. mixpeek/types/configs_request.py +31 -0
  33. mixpeek/types/configs_response.py +31 -0
  34. mixpeek/types/connection.py +36 -0
  35. mixpeek/types/connection_engine.py +5 -0
  36. mixpeek/types/csv_params.py +29 -0
  37. mixpeek/types/destination_schema.py +31 -0
  38. mixpeek/types/embedding_request.py +32 -0
  39. mixpeek/types/embedding_response.py +30 -0
  40. mixpeek/types/error_message.py +29 -0
  41. mixpeek/types/error_response.py +30 -0
  42. mixpeek/types/field_schema.py +33 -0
  43. mixpeek/types/field_type.py +5 -0
  44. mixpeek/types/generation_response.py +34 -0
  45. mixpeek/types/html_params.py +29 -0
  46. mixpeek/types/http_validation_error.py +30 -0
  47. mixpeek/types/image_params.py +32 -0
  48. mixpeek/types/message.py +30 -0
  49. mixpeek/types/metadata.py +34 -0
  50. mixpeek/types/modality.py +5 -0
  51. mixpeek/types/model.py +30 -0
  52. mixpeek/types/pdf_params.py +41 -0
  53. mixpeek/types/pipeline_response.py +39 -0
  54. mixpeek/types/ppt_params.py +27 -0
  55. mixpeek/types/pptx_params.py +27 -0
  56. mixpeek/types/settings.py +35 -0
  57. mixpeek/types/source_schema.py +32 -0
  58. mixpeek/types/txt_params.py +27 -0
  59. mixpeek/types/validation_error.py +32 -0
  60. mixpeek/types/validation_error_loc_item.py +5 -0
  61. mixpeek/types/video_params.py +27 -0
  62. mixpeek/types/workflow_response.py +32 -0
  63. mixpeek/types/workflow_settings.py +30 -0
  64. mixpeek/types/xlsx_params.py +29 -0
  65. mixpeek/version.py +4 -0
  66. mixpeek/workflows/__init__.py +2 -0
  67. mixpeek/workflows/client.py +418 -0
  68. mixpeek-0.1.0.dist-info/LICENSE.rst → mixpeek-0.6.1.dist-info/LICENSE +10 -9
  69. mixpeek-0.6.1.dist-info/METADATA +145 -0
  70. mixpeek-0.6.1.dist-info/RECORD +71 -0
  71. {mixpeek-0.1.0.dist-info → mixpeek-0.6.1.dist-info}/WHEEL +1 -1
  72. mixpeek-0.1.0.dist-info/METADATA +0 -211
  73. mixpeek-0.1.0.dist-info/RECORD +0 -5
@@ -1,211 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: mixpeek
3
- Version: 0.1.0
4
- Summary:
5
- Author: Ethan Steininger
6
- Author-email: esteininger21@gmail.com
7
- Requires-Python: >=3.11,<4.0
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.11
10
- Classifier: Programming Language :: Python :: 3.12
11
- Requires-Dist: pydantic (>=2.6.4,<3.0.0)
12
- Requires-Dist: requests (>=2.31.0,<3.0.0)
13
- Description-Content-Type: text/markdown
14
-
15
- # Mixpeek
16
-
17
- Mixpeek let's you run full-text-search on your files
18
-
19
- **Stuff you might be looking for**:
20
-
21
- - [API Documentation](https://docs.mixpeek.com)
22
- - [Installing Mixpeek](https://github.com/mixpeek/mixpeek-python#installation)
23
- - [S3 Support](https://github.com/mixpeek/mixpeek-python#s3-support)
24
- - [Bugs & Questions](https://github.com/mixpeek/mixpeek-python#bugs-&-questions)
25
-
26
- ## Quickstart
27
-
28
- Upload any filetype from the supported filetype [list here](https://mixpeek.com/learn)
29
-
30
- ```python
31
- from mixpeek import Mixpeek
32
-
33
- mix = Mixpeek(api_key="API_KEY")
34
-
35
- # index one local pdf document without any extra metadata
36
- mix.index("/user/desktop/file.pdf")
37
-
38
- # with extra metadata
39
- mix.index(
40
- "/user/desktop/file.pdf",
41
- user_id="123",
42
- tags="document, legal",
43
- static_file_url="cdn.host.com/file.pdf",
44
- save=True,
45
- description="this is a cat"
46
- )
47
- ```
48
-
49
- ...or any audio filetype
50
-
51
- ```python
52
- mix.index("/user/desktop/never_gonna_give_you_up.mp3")
53
- ```
54
-
55
- ... or an image, video, document or [anything else mixpeek supports](https://mixpeek.com/learn)
56
-
57
- ```python
58
- video = mix.index("/user/desktop/video.avi")
59
- image = mix.index("/user/desktop/image.png")
60
- markdown = mix.index("/user/desktop/markdown.md")
61
- ```
62
-
63
- The API will return the `file_id`, be sure to store this:
64
-
65
- ```python
66
- # response
67
- {
68
- "file_id": "63a32cca0de5e4ce354a4b1c"
69
- }
70
- ```
71
-
72
- Now you can search across all your files:
73
-
74
- ```python
75
- mix.search(query="let you down")
76
-
77
- # response
78
- [
79
- {
80
- "file_id": "6377c98b3c4f239f17663d79",
81
- "filename": "prescription.pdf",
82
- "importance": "100%",
83
- "static_file_url": "s3://audio.mp3"
84
- }
85
- ]
86
-
87
- ```
88
-
89
- And you can include other parameters in your search query:
90
-
91
- ```python
92
- mix.search(
93
- "readme",
94
- user_id="john_smith_123",
95
- context="true",
96
- tags="legal, document"
97
- )
98
-
99
- # response
100
- [
101
- {
102
- "file_id": "63a32cd70de5e4ce354a4b1f",
103
- "filename": "system-design-primer.md",
104
- "static_file_url": "s3://audio.mp3",
105
- "user_id": "john_smith_123",
106
- "tags":["legal", "document"],
107
- "highlights": [
108
- {
109
- "texts": [
110
- {
111
- "type": "text",
112
- "value": "- What is the expected "
113
- },
114
- {
115
- "type": "hit",
116
- "value": "read"
117
- },
118
- {
119
- "type": "text",
120
- "value": " to write ratio?\n\n"
121
- }
122
- ]
123
- }
124
- ],
125
- "importance": "100%"
126
- }
127
- ]
128
- ```
129
-
130
- ## Installation
131
-
132
- Installing mixpeek is easy
133
-
134
- ```shell
135
- pip install git+https://github.com/mixpeek/mixpeek-python.git@master
136
- ```
137
-
138
- ## S3 Support
139
-
140
- Be sure you create an AWS access key/secret key combo with S3 bucket read permissions using [this guide](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html).
141
-
142
- Files are never stored on our servers, review our [security principles](https://mixpeek.com/security).
143
-
144
- ```python
145
- from mixpeek import Mixpeek
146
-
147
- mix = Mixpeek(
148
- api_key="mixpeek_api_key",
149
- access_key="aws_access_key",
150
- secret_key="aws_secret_key",
151
- region="region"
152
- )
153
-
154
- mix.index_bucket("mixpeek-public-demo")
155
-
156
- # response (list of File_ids)
157
-
158
- {
159
- "file_ids": [
160
- "63a33611660c021b50271666",
161
- "63a33611660c021b50271667",
162
- "63a33611660c021b50271668",
163
- "63a33613660c021b50271669"
164
- ]
165
- }
166
-
167
- ```
168
-
169
- ## Bugs & Questions
170
-
171
- If this was helpful, please upvote [this StackOverflow comment](https://stackoverflow.com/a/69475102/5956579)
172
-
173
- You can file bugs in our [github issues tracker](https://github.com/mixpeek/mixpeek-python/issues),
174
- and ask any technical questions on
175
- [Stack Overflow using the mixpeek tag](http://stackoverflow.com/questions/ask?tags=mixpeek).
176
- We keep an eye on both.
177
-
178
- ## 🚀 Features
179
-
180
- - Supports for `Python 3.8` and higher.
181
- - Full text search
182
- - AWS S3 Integration
183
- - Fuzzy text matching
184
-
185
- ## Articles:
186
-
187
- [Learning Center](https://mixpeek.com/learn)
188
-
189
- ## License ([MIT License](http://opensource.org/licenses/mit-license.php))
190
-
191
- Copyright © 2022 Mixpeek, https://mixpeek.com
192
-
193
- Permission is hereby granted, free of charge, to any person obtaining
194
- a copy of this software and associated documentation files (the
195
- "Software"), to deal in the Software without restriction, including
196
- without limitation the rights to use, copy, modify, merge, publish,
197
- distribute, sublicense, and/or sell copies of the Software, and to
198
- permit persons to whom the Software is furnished to do so, subject to
199
- the following conditions:
200
-
201
- The above copyright notice and this permission notice shall be
202
- included in all copies or substantial portions of the Software.
203
-
204
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
205
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
206
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
207
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
208
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
209
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
210
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
211
-
@@ -1,5 +0,0 @@
1
- mixpeek/__init__.py,sha256=4e_lxuzNX6tRmpdleC0BP2PCuDrQeIomlQjbmR4NUK4,2448
2
- mixpeek-0.1.0.dist-info/LICENSE.rst,sha256=HHFCinDHL38osjHNrBgNZqExYuEWJ3hNZxzcr1mWWeo,1072
3
- mixpeek-0.1.0.dist-info/METADATA,sha256=PqS5GtWG0NOu6youD1oE-w74F6cs532JNXdkT2omt8c,5587
4
- mixpeek-0.1.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
5
- mixpeek-0.1.0.dist-info/RECORD,,