mdx.py 701 B

12345678910111213141516171819202122232425
  1. import hashlib
  2. from embedchain.helpers.json_serializable import register_deserializable
  3. from embedchain.loaders.base_loader import BaseLoader
  4. @register_deserializable
  5. class MdxLoader(BaseLoader):
  6. def load_data(self, url):
  7. """Load data from a mdx file."""
  8. with open(url, "r", encoding="utf-8") as infile:
  9. content = infile.read()
  10. metadata = {
  11. "url": url,
  12. }
  13. doc_id = hashlib.sha256((content + url).encode()).hexdigest()
  14. return {
  15. "doc_id": doc_id,
  16. "data": [
  17. {
  18. "content": content,
  19. "meta_data": metadata,
  20. }
  21. ],
  22. }