Spaces:
Runtime error
Runtime error
Benjamin Bossan
commited on
Commit
·
273184e
1
Parent(s):
d8d447c
When loading cards, recognize image sections
Browse files
utils.py
CHANGED
@@ -9,7 +9,12 @@ from dataclasses import dataclass
|
|
9 |
from pathlib import Path
|
10 |
|
11 |
from skops import card
|
12 |
-
from skops.card._model_card import Section
|
|
|
|
|
|
|
|
|
|
|
13 |
|
14 |
|
15 |
def get_rendered_model_card(model_card: card.Card, hf_path: str) -> str:
|
@@ -42,10 +47,7 @@ def process_card_for_rendering(rendered: str) -> tuple[str, str]:
|
|
42 |
def markdown_images(markdown):
|
43 |
# example image markdown:
|
44 |
# 
|
45 |
-
images =
|
46 |
-
r'(!\[(?P<image_title>[^\]]+)\]\((?P<image_path>[^\)"\s]+)\s*([^\)]*)\))',
|
47 |
-
markdown,
|
48 |
-
)
|
49 |
return images
|
50 |
|
51 |
def img_to_bytes(img_path):
|
@@ -106,11 +108,20 @@ def iterate_key_section_content(
|
|
106 |
continue
|
107 |
|
108 |
return_key = key if not parent_keys else "/".join(parent_keys + [key])
|
|
|
|
|
109 |
is_fig = getattr(val, "is_fig", False)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
110 |
yield SectionInfo(
|
111 |
return_key=return_key,
|
112 |
title=title,
|
113 |
-
content=
|
114 |
is_fig=is_fig,
|
115 |
level=level,
|
116 |
)
|
|
|
9 |
from pathlib import Path
|
10 |
|
11 |
from skops import card
|
12 |
+
from skops.card._model_card import PlotSection, Section
|
13 |
+
|
14 |
+
|
15 |
+
PAT_MD_IMG = re.compile(
|
16 |
+
r'(!\[(?P<image_title>[^\]]+)\]\((?P<image_path>[^\)"\s]+)\s*([^\)]*)\))'
|
17 |
+
)
|
18 |
|
19 |
|
20 |
def get_rendered_model_card(model_card: card.Card, hf_path: str) -> str:
|
|
|
47 |
def markdown_images(markdown):
|
48 |
# example image markdown:
|
49 |
# 
|
50 |
+
images = PAT_MD_IMG.findall(markdown)
|
|
|
|
|
|
|
51 |
return images
|
52 |
|
53 |
def img_to_bytes(img_path):
|
|
|
108 |
continue
|
109 |
|
110 |
return_key = key if not parent_keys else "/".join(parent_keys + [key])
|
111 |
+
content = val.content
|
112 |
+
|
113 |
is_fig = getattr(val, "is_fig", False)
|
114 |
+
img_match = PAT_MD_IMG.match(val.content)
|
115 |
+
if img_match: # image section found in parsed model card
|
116 |
+
is_fig = True
|
117 |
+
img_title = img_match.groupdict()["image_title"]
|
118 |
+
img_path = img_match.groupdict()["image_path"]
|
119 |
+
content = PlotSection(alt_text=img_title, path=img_path)
|
120 |
+
|
121 |
yield SectionInfo(
|
122 |
return_key=return_key,
|
123 |
title=title,
|
124 |
+
content=content,
|
125 |
is_fig=is_fig,
|
126 |
level=level,
|
127 |
)
|