mixpeek 0.6.26__tar.gz → 0.6.28__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mixpeek
3
- Version: 0.6.26
3
+ Version: 0.6.28
4
4
  Summary: Mixpeek Python SDK
5
5
  Home-page: https://github.com/mixpeek/mixpeek-python
6
6
  Author: Ethan Steininger
@@ -101,6 +101,15 @@ mixpeek.connections.data.delete(
101
101
  )
102
102
  ```
103
103
 
104
+ Upload file
105
+
106
+ ```python
107
+ mixpeek.connections.storage.upload(
108
+ connection_id="conn_321",
109
+ file_path="/my/local/file.mp4"
110
+ )
111
+ ```
112
+
104
113
  ### Tools
105
114
 
106
115
  ```python
@@ -86,6 +86,15 @@ mixpeek.connections.data.delete(
86
86
  )
87
87
  ```
88
88
 
89
+ Upload file
90
+
91
+ ```python
92
+ mixpeek.connections.storage.upload(
93
+ connection_id="conn_321",
94
+ file_path="/my/local/file.mp4"
95
+ )
96
+ ```
97
+
89
98
  ### Tools
90
99
 
91
100
  ```python
@@ -11,7 +11,7 @@ from .endpoints.pipelines import Pipelines
11
11
  class Mixpeek:
12
12
  def __init__(self, api_key: str):
13
13
  self.api_key = api_key
14
- self.base_url = "http://localhost:8000/"
14
+ self.base_url = "https://api.mixpeek.com/"
15
15
  self.headers = {
16
16
  "Authorization": f"Bearer {self.api_key}",
17
17
  "Content-Type": "application/json"
@@ -19,6 +19,8 @@ class Mixpeek:
19
19
  self.extract = Extract(self.base_url, self.headers)
20
20
  self.embed = Embed(self.base_url, self.headers)
21
21
  self.generate = Generate(self.base_url, self.headers)
22
- self.connections = Connections(self.base_url, self.headers)
22
+
23
+ # we include api_key as well because the header is different for upload
24
+ self.connections = Connections(self.base_url, self.headers, self.api_key)
23
25
  self.tools = Tools(self.base_url, self.headers)
24
26
  self.pipelines = Pipelines(self.base_url, self.headers)
@@ -0,0 +1,69 @@
1
+ import requests
2
+ import os
3
+
4
+ class Connections:
5
+ def __init__(self, base_url, headers, api_key):
6
+ self.base_url = base_url
7
+ self.headers = headers
8
+ self.api_key = api_key
9
+ self.data = self.Data(self)
10
+ self.storage = self.Storage(self)
11
+
12
+ def create(self, alias: str, engine: str, details: dict):
13
+ url = f"{self.base_url}connections/"
14
+ data = {
15
+ "alias": alias,
16
+ "engine": engine,
17
+ "details": details
18
+ }
19
+ response = requests.post(url, json=data, headers=self.headers)
20
+ return response.json()
21
+
22
+ class Data:
23
+ def __init__(self, parent):
24
+ self.base_url = parent.base_url
25
+ self.headers = parent.headers
26
+
27
+ # mixpeek.connections.data.insert(connection_id="123", payload={"key": "value"})
28
+ def insert(self, connection_id: str, payload: list):
29
+ pass
30
+
31
+ # mixpeek.connections.data.delete(connection_id="123", filters={"key": "value"})
32
+ def delete(self, connection_id: str, filters: dict):
33
+ pass
34
+
35
+ # mixpeek.connections.data.upsert(connection_id="123", payload={"key": "value"}, filters={"key": "value"})
36
+ def upsert(self, connection_id: str, payload: dict, filters: dict):
37
+ pass
38
+
39
+
40
+ class Storage:
41
+ def __init__(self, parent):
42
+ self.base_url = parent.base_url
43
+ self.headers = parent.headers
44
+ self.api_key = parent.api_key
45
+
46
+ def upload(self, connection_id: str, file_path: str):
47
+ url = f"{self.base_url}connections/storage?connection_id={connection_id}"
48
+
49
+ files=[
50
+ ('file',(os.path.basename(file_path),open(file_path,'rb'),'application/octet-stream'))
51
+ ]
52
+ headers = {
53
+ 'Authorization': f'Bearer {self.api_key}'
54
+ }
55
+
56
+ response = requests.request("POST", url, headers=headers, files=files)
57
+
58
+ return response.json()
59
+
60
+
61
+ # mixpeek.connections.storage.delete(connection_id="123", file_name="example.txt")
62
+ def delete(self, connection_id: str, file_name: str):
63
+ url = f"{self.base_url}storage/{connection_id}/delete/{file_name}"
64
+ response = requests.delete(url, headers=self.headers)
65
+ return response.json()
66
+
67
+
68
+
69
+
@@ -0,0 +1,55 @@
1
+ import requests
2
+
3
+ class Extract:
4
+ def __init__(self, base_url, headers):
5
+ self.base_url = base_url
6
+ self.headers = headers
7
+
8
+ def automatic(self, input: str, input_type: str):
9
+ url = f"{self.base_url}extract/"
10
+ data = {
11
+ "input": input,
12
+ "input_type": input_type
13
+ }
14
+ response = requests.post(url, json=data, headers=self.headers)
15
+ return response.json()
16
+
17
+ def video(self, input: str, input_type: str):
18
+ url = f"{self.base_url}extract/"
19
+ data = {
20
+ "modality": "video",
21
+ "input": input,
22
+ "input_type": input_type
23
+ }
24
+ response = requests.post(url, json=data, headers=self.headers)
25
+ return response.json()
26
+
27
+ def audio(self, input: str, input_type: str):
28
+ url = f"{self.base_url}extract/"
29
+ data = {
30
+ "modality": "audio",
31
+ "input": input,
32
+ "input_type": input_type
33
+ }
34
+ response = requests.post(url, json=data, headers=self.headers)
35
+ return response.json()
36
+
37
+ def image(self, input: str, input_type: str):
38
+ url = f"{self.base_url}extract/"
39
+ data = {
40
+ "modality": "image",
41
+ "input": input,
42
+ "input_type": input_type
43
+ }
44
+ response = requests.post(url, json=data, headers=self.headers)
45
+ return response.json()
46
+
47
+ def text(self, input: str, input_type: str):
48
+ url = f"{self.base_url}extract/"
49
+ data = {
50
+ "modality": "text",
51
+ "input": input,
52
+ "input_type": input_type
53
+ }
54
+ response = requests.post(url, json=data, headers=self.headers)
55
+ return response.json()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mixpeek
3
- Version: 0.6.26
3
+ Version: 0.6.28
4
4
  Summary: Mixpeek Python SDK
5
5
  Home-page: https://github.com/mixpeek/mixpeek-python
6
6
  Author: Ethan Steininger
@@ -101,6 +101,15 @@ mixpeek.connections.data.delete(
101
101
  )
102
102
  ```
103
103
 
104
+ Upload file
105
+
106
+ ```python
107
+ mixpeek.connections.storage.upload(
108
+ connection_id="conn_321",
109
+ file_path="/my/local/file.mp4"
110
+ )
111
+ ```
112
+
104
113
  ### Tools
105
114
 
106
115
  ```python
@@ -6,7 +6,7 @@ with open('requirements.txt') as f:
6
6
 
7
7
  setup(
8
8
  name='mixpeek',
9
- version='0.6.26',
9
+ version='0.6.28',
10
10
  author='Ethan Steininger',
11
11
  author_email='ethan@mixpeek.com',
12
12
  description='Mixpeek Python SDK',
@@ -1,31 +0,0 @@
1
- import requests
2
-
3
- class Connections:
4
- def __init__(self, base_url, headers):
5
- self.base_url = base_url
6
- self.headers = headers
7
- self.data = self.Data(self)
8
-
9
- def create(self, alias: str, engine: str, details: dict):
10
- url = f"{self.base_url}connections/"
11
- data = {
12
- "alias": alias,
13
- "engine": engine,
14
- "details": details
15
- }
16
- response = requests.post(url, json=data, headers=self.headers)
17
- return response.json()
18
-
19
- # mixpeek.connections.data.insert(connection_id="123", payload={"key": "value"})
20
- class Data:
21
- def __init__(self, parent):
22
- self.base_url = parent.base_url
23
- self.headers = parent.headers
24
-
25
- def insert(self, connection_id: str, payload: list):
26
- pass
27
-
28
- def delete(self, connection_id: str, filters: dict):
29
- pass
30
-
31
-
@@ -1,16 +0,0 @@
1
- import requests
2
-
3
- class Extract:
4
- def __init__(self, base_url, headers):
5
- self.base_url = base_url
6
- self.headers = headers
7
-
8
- def extract(self, input: str, input_type: str, modality: str = None):
9
- url = f"{self.base_url}extract/"
10
- data = {
11
- "modality": modality,
12
- "input": input,
13
- "input_type": input_type
14
- }
15
- response = requests.post(url, json=data, headers=self.headers)
16
- return response.json()
File without changes
File without changes
File without changes
File without changes
File without changes