---------------------------------------------------------------------------
APIError Traceback (most recent call last)
Cell In[11], line 12
9 docs = text_splitter.split_documents(documents)
10 # print(len(docs))
11 # print(docs[0])
---> 12 db = FAISS.from_documents(docs, embeddings)
13 db.save_local(faiss_name)
File /opt/conda/envs/python35-paddle120-env/lib/python3.10/site-packages/langchain_core/vectorstores.py:510, in VectorStore.from_documents(cls, documents, embedding, **kwargs)
508 texts = [d.page_content for d in documents]
509 metadatas = [d.metadata for d in documents]
--> 510 return cls.from_texts(texts, embedding, metadatas=metadatas, **kwargs)
File /opt/conda/envs/python35-paddle120-env/lib/python3.10/site-packages/langchain/vectorstores/faiss.py:911, in FAISS.from_texts(cls, texts, embedding, metadatas, ids, **kwargs)
884 @classmethod
885 def from_texts(
886 cls,
(...)
891 **kwargs: Any,
892 ) -> FAISS:
893 """Construct FAISS wrapper from raw documents.
894
895 This is a user friendly interface that:
(...)
909 faiss = FAISS.from_texts(texts, embeddings)
910 """
--> 911 embeddings = embedding.embed_documents(texts)
912 return cls.__from(
913 texts,
914 embeddings,
(...)
918 **kwargs,
919 )
File ~/ERNIE-Bot-SDK/erniebot-agent/erniebot_agent/extensions/langchain/embeddings/ernie.py:68, in ErnieEmbeddings.embed_documents(self, texts)
66 lst = []
67 for chunk in text_in_chunks:
---> 68 resp = self.client.create(_config_=self._get_auth_config(), input=chunk, model=self.model)
69 lst.extend([res["embedding"] for res in resp["data"]])
70 return lst
File ~/ERNIE-Bot-SDK/erniebot/resources/abc/creatable.py:33, in Creatable.create(cls, **kwargs)
31 resource = cls.new_object(**config)
32 create_kwargs = kwargs
---> 33 return resource.create_resource(**create_kwargs)
File ~/ERNIE-Bot-SDK/erniebot/resources/abc/creatable.py:46, in Creatable.create_resource(self, **create_kwargs)
44 def create_resource(self, **create_kwargs: Any) -> Union[EBResponse, Iterator[EBResponse]]:
45 path, params, headers, files, stream, request_timeout = self._prepare_create(create_kwargs)
---> 46 resp = self.request(
47 method="POST",
48 path=path,
49 stream=stream,
50 params=params,
51 headers=headers,
52 files=files,
53 request_timeout=request_timeout,
54 )
55 # See https://github.com/python/mypy/issues/1533
56 resp = self._postprocess_create(resp) # type: ignore
File ~/ERNIE-Bot-SDK/erniebot/resources/resource.py:142, in EBResource.request(self, method, path, stream, params, headers, files, request_timeout)
129 @final
130 def request(
131 self,
(...)
139 request_timeout: Optional[float] = None,
140 ) -> Union[EBResponse, Iterator[EBResponse]]:
141 if self.timeout is None:
--> 142 return self._request(
143 method=method,
144 path=path,
145 stream=stream,
146 params=params,
147 headers=headers,
148 files=files,
149 request_timeout=request_timeout,
150 )
151 else:
152 st_time = time.time()
File ~/ERNIE-Bot-SDK/erniebot/resources/resource.py:363, in EBResource._request(self, method, path, stream, params, headers, files, request_timeout)
352 @final
353 def _request(
354 self,
(...)
361 request_timeout: Optional[float],
362 ) -> Union[EBResponse, Iterator[EBResponse]]:
--> 363 resp = self._backend.request(
364 method,
365 path,
366 stream,
367 params=params,
368 headers=headers,
369 files=files,
370 request_timeout=request_timeout,
371 )
372 if stream:
373 if not isinstance(resp, Iterator):
File ~/ERNIE-Bot-SDK/erniebot/backends/aistudio.py:82, in AIStudioBackend.request(self, method, path, stream, params, headers, files, request_timeout)
74 url, headers, data = self._client.prepare_request(
75 method,
76 url,
(...)
79 files=files,
80 )
81 headers = self._add_aistudio_fields_to_headers(headers)
---> 82 return self._client.send_request(
83 method,
84 url,
85 stream,
86 data=data,
87 headers=headers,
88 files=files,
89 request_timeout=request_timeout,
90 base_url=self.base_url,
91 )
File ~/ERNIE-Bot-SDK/erniebot/http_client.py:145, in EBClient.send_request(self, method, url, stream, data, headers, files, request_timeout, base_url)
124 def send_request(
125 self,
126 method: str,
(...)
133 base_url: Optional[str] = None,
134 ) -> Union[EBResponse, Iterator[EBResponse]]:
135 result = self.send_request_raw(
136 method.lower(),
137 url,
(...)
143 request_timeout=request_timeout,
144 )
--> 145 resp, got_stream = self._interpret_response(result, stream)
146 if stream != got_stream:
147 logger.warning("Unexpected response: %s", resp)
File ~/ERNIE-Bot-SDK/erniebot/http_client.py:339, in EBClient._interpret_response(self, result, stream)
333 return (
334 self._interpret_stream_response(result.iter_lines(), result.status_code, result.headers),
335 True,
336 )
337 else:
338 return (
--> 339 self._interpret_response_line(
340 result.content.decode("utf-8"),
341 result.status_code,
342 result.headers,
343 stream=False,
344 ),
345 False,
346 )
File ~/ERNIE-Bot-SDK/erniebot/http_client.py:442, in EBClient._interpret_response_line(self, rbody, rcode, rheaders, stream)
434 raise errors.HTTPRequestError(
435 f"Status code is not {http.HTTPStatus.OK}.",
436 rcode=resp.rcode,
437 rbody=str(resp.rbody),
438 rheaders=resp.rheaders,
439 )
441 if self._resp_handler is not None:
--> 442 resp = self._resp_handler(resp)
443 return resp
File ~/ERNIE-Bot-SDK/erniebot/backends/aistudio.py:59, in AIStudioBackend.handle_response(self, resp)
57 raise errors.TryAgain(emsg, ecode=ecode)
58 else:
---> 59 raise errors.APIError(emsg, ecode=ecode)
60 else:
61 return EBResponse(resp.rcode, resp.result, resp.rheaders)