Refactor SearchApi.py to include typing and handle empty records
This commit is contained in:
parent
26612b643d
commit
df7b4fc590
1 changed files with 17 additions and 6 deletions
|
|
@ -1,9 +1,14 @@
|
||||||
from langflow import CustomComponent
|
|
||||||
from langchain.schema import Document
|
|
||||||
from langflow.services.database.models.base import orjson_dumps
|
|
||||||
from langchain_community.utilities.searchapi import SearchApiAPIWrapper
|
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
|
||||||
|
from langchain.schema import Document
|
||||||
|
from langchain_community.utilities.searchapi import SearchApiAPIWrapper
|
||||||
|
|
||||||
|
from langflow import CustomComponent
|
||||||
|
from langflow.schema.schema import Record
|
||||||
|
from langflow.services.database.models.base import orjson_dumps
|
||||||
|
from langflow.schema.schema import Record
|
||||||
|
from langflow.services.database.models.base import orjson_dumps
|
||||||
|
|
||||||
|
|
||||||
class SearchApi(CustomComponent):
|
class SearchApi(CustomComponent):
|
||||||
display_name: str = "SearchApi"
|
display_name: str = "SearchApi"
|
||||||
|
|
@ -35,7 +40,7 @@ class SearchApi(CustomComponent):
|
||||||
engine: str,
|
engine: str,
|
||||||
api_key: str,
|
api_key: str,
|
||||||
params: Optional[dict] = None,
|
params: Optional[dict] = None,
|
||||||
) -> Document:
|
) -> Record:
|
||||||
if params is None:
|
if params is None:
|
||||||
params = {}
|
params = {}
|
||||||
|
|
||||||
|
|
@ -48,4 +53,10 @@ class SearchApi(CustomComponent):
|
||||||
|
|
||||||
document = Document(page_content=result)
|
document = Document(page_content=result)
|
||||||
|
|
||||||
return document
|
records = self.to_records(document)
|
||||||
|
if records:
|
||||||
|
record = records[0]
|
||||||
|
self.status = record
|
||||||
|
return record
|
||||||
|
else:
|
||||||
|
return Record()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue