csv_loader
Adapted from the Griptape AI Framework documentation.
Bases:
BaseFileLoader[ListArtifact[TextArtifact]]
Source Code in griptape/loaders/csv_loader.py
@define class CsvLoader(BaseFileLoader[ListArtifact[TextArtifact]]): delimiter: str = field(default=",", kw_only=True) encoding: str = field(default="utf-8", kw_only=True) format_row: Callable[[dict], str] = field( default=lambda value: "\n".join(f"{key}: {val}" for key, val in value.items()), kw_only=True ) def try_parse(self, data: bytes) -> ListArtifact[TextArtifact]: reader = csv.DictReader(StringIO(data.decode(self.encoding)), delimiter=self.delimiter) return ListArtifact( [TextArtifact(self.format_row(row), meta={"row_num": row_num}) for row_num, row in enumerate(reader)] )
delimiter = field(default=',', kw_only=True)
class-attribute instance-attributeencoding = field(default='utf-8', kw_only=True)
class-attribute instance-attributeformat_row = field(default=lambda value: '\n'.join(f'{key}: {val}' for (key, val) in value.items()), kw_only=True)
class-attribute instance-attribute
try_parse(data)
Source Code in griptape/loaders/csv_loader.py
def try_parse(self, data: bytes) -> ListArtifact[TextArtifact]: reader = csv.DictReader(StringIO(data.decode(self.encoding)), delimiter=self.delimiter) return ListArtifact( [TextArtifact(self.format_row(row), meta={"row_num": row_num}) for row_num, row in enumerate(reader)] )
- On this page
- try_parse(data)
Could this page be better? Report a problem or suggest an addition!