summaryrefslogtreecommitdiffstats
path: root/g4f
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--g4f/image.py11
-rw-r--r--g4f/providers/base_provider.py2
2 files changed, 9 insertions, 4 deletions
diff --git a/g4f/image.py b/g4f/image.py
index 6561b83a..556ec43d 100644
--- a/g4f/image.py
+++ b/g4f/image.py
@@ -23,6 +23,11 @@ EXTENSIONS_MAP: dict[str, str] = {
"image/webp": "webp",
}
+def fix_url(url:str) -> str:
+ """ replace ' ' by '+' (to be markdown compliant)"""
+ return url.replace(" ","+")
+
+
def to_image(image: ImageType, is_svg: bool = False) -> Image:
"""
Converts the input image to a PIL Image object.
@@ -212,12 +217,12 @@ def format_images_markdown(images: Union[str, list], alt: str, preview: Union[st
str: The formatted markdown string.
"""
if isinstance(images, str):
- result = f"[![{alt}]({preview.replace('{image}', images) if preview else images})]({images})"
+ result = f"[![{alt}]({fix_url(preview.replace('{image}', images) if preview else images)})]({fix_url(images)})"
else:
if not isinstance(preview, list):
preview = [preview.replace('{image}', image) if preview else image for image in images]
result = "\n".join(
- f"[![#{idx+1} {alt}]({preview[idx]})]({image})"
+ f"[![#{idx+1} {alt}]({fix_url(preview[idx])})]({fix_url(image)})"
#f'[<img src="{preview[idx]}" width="200" alt="#{idx+1} {alt}">]({image})'
for idx, image in enumerate(images)
)
@@ -302,4 +307,4 @@ class ImageRequest:
self.options = options
def get(self, key: str):
- return self.options.get(key) \ No newline at end of file
+ return self.options.get(key)
diff --git a/g4f/providers/base_provider.py b/g4f/providers/base_provider.py
index a03dcbba..5d48f2e0 100644
--- a/g4f/providers/base_provider.py
+++ b/g4f/providers/base_provider.py
@@ -248,7 +248,7 @@ class AsyncGeneratorProvider(AsyncProvider):
str: The created result as a string.
"""
return "".join([
- chunk async for chunk in cls.create_async_generator(model, messages, stream=False, **kwargs)
+ str(chunk) async for chunk in cls.create_async_generator(model, messages, stream=False, **kwargs)
if not isinstance(chunk, (Exception, FinishReason))
])