llm-arch / src /common.py
alfraser's picture
Fixed a display issue in the markdown with dollar signs in prices
aff284c
raw
history blame
1.12 kB
import os
import streamlit as st
from typing import List
data_dir = os.path.join(os.path.dirname(__file__), '..', 'data')
img_dir = os.path.join(os.path.dirname(__file__), '..', 'img')
config_dir = os.path.join(os.path.dirname(__file__), '..', 'config')
def hf_api_token() -> str:
"""
Utility single access point to look up the hugging face access token.
"""
token = st.secrets['hf_token']
if token is None:
raise ValueError('No HF access token found in streamlit secrets')
return token
def join_items_comma_and(items: List[str]) -> str:
"""
Utility to convert a list of items to lowercase strings, comma separated and ending with and
"""
items = [str(i).strip() for i in items]
string_count = len(items)
if string_count == 0:
return ""
if string_count == 1:
return items[0]
return f"{', '.join(items[:-1])} and {items[-1]}"
def escape_dollars(text: str) -> str:
"""
Convenience function to escape dollar signs for prices in markdown
"""
if text is None:
return text
return text.replace("$", "\\$")