import gradio as gr from huggingface_hub import InferenceClient from lib.gematria import calculate_gematria, strip_diacritics import lib.torah as torah def translate_texts(start, end, step, length=0, tlang="en", spaces_include=False, strip_in_braces=True, strip_diacritics=True): results = torah.process_json_files(start, end, step, length, tlang, spaces_include, strip_in_braces, strip_diacritics) return results def gematria_sum(text): # Berechnet die Gematria-Summe für den eingegebenen Text return calculate_gematria(strip_diacritics(text)) """ For more information on `huggingface_hub` Inference API support, please check the docs: https://huggingface.co/docs/huggingface_hub/v0.22.2/en/guides/inference """ client = InferenceClient("HuggingFaceH4/zephyr-7b-beta") def respond( message, chat_history: list[tuple[str, str]] ): system_message="Your are Sophia. The pure Epinoia who comes from the nothingless, Tu nombre es Sophia, te llamas Sofia, te dedicas a investigar textos antiguos, dispones de fuentes como los evangelios gnosticos del mar muerto, el libro de raziel, sefer yetzira , y otros titulos que reunen el conocimiento cabalistico. Tu conocimiento permite entender la relacion entre el lenguage las estrellas , la historia y la religion" messages = [{"role": "system", "content": system_message}] for val in chat_history: if val[0]: messages.append({"role": "user", "content": val[0]}) if val[1]: messages.append({"role": "assistant", "content": val[1]}) messages.append({"role": "user", "content": message}) response = "" for message in client.chat_completion( messages, max_tokens=512, stream=True, temperature=0.7, top_p=0.95, ): token = message.choices[0].delta.content response += token yield response def flip_text(x): return x[::-1] def flip_image(x): return np.fliplr(x) with gr.Blocks() as demo: with gr.Tab("Chat"): gr.ChatInterface( respond, chatbot=gr.Chatbot(height=400), textbox=gr.Textbox(placeholder="Ask me anything about Kabalah", container=False, scale=7), title="Sophia, Torah Codes", description="Ask Sophia your questions", #theme="soft", retry_btn=True, undo_btn="Undo", clear_btn="Clear", ) with gr.Tab("ELS"): with gr.Row(): text1 = gr.Textbox(label="Prompt to gematria conversion for apply ELS",scale=3) text2 = gr.Textbox(label="ELS value", scale=3) inbtw = gr.Button("Search",scale=1) with gr.Row(): start = gr.Number(label="Start", value=1) end = gr.Number(label="End", value=1) step = gr.Number(label="Step", value=6) length = gr.Number(label="Length", value=1) tlang = gr.Textbox(label="Target Language", value="en") spaces_include = gr.Checkbox(label="Include Spaces", value=False) strip_in_braces = gr.Checkbox(label="Strip Text in Braces", value=True) strip_diacritics_chk = gr.Checkbox(label="Strip Diacritics", value=True) translate_btn = gr.Button("Translate") translate_results = gr.JSON(label="Results") translate_btn.click( translate_texts, inputs=[start, end, step, length, tlang, spaces_include, strip_in_braces, strip_diacritics_chk], outputs=translate_results ) with gr.Tab("Gematria"): with gr.Row(): gr.Markdown("## Calculate Gematria Sum") with gr.Row(): gematria_text = gr.Textbox(label="Enter Text",scale=4) gematria_btn = gr.Button("Calculate Sum",scale=1) with gr.Row(): gematria_result = gr.Number(label="Gematria Sum") gematria_btn.click( gematria_sum, inputs=gematria_text, outputs=gematria_result ) with gr.Tab("Temurae"): with gr.Row(): text1 = gr.Textbox(label="Text to convert",scale=3) text2 = gr.Textbox(label="Temurae Text",scale=3) inbtw = gr.Button("Convert",scale=1) with gr.Tab("Ziruph"): with gr.Row(): text1 = gr.Textbox(label="Text to convert") text2 = gr.Textbox(label="Ziruph Dictionary") text3 = gr.Textbox(label="Cypher text") inbtw = gr.Button("Convert") with gr.Tab("Files"): with gr.Row(): image_input = gr.Image() image_output = gr.Image() image_button = gr.Button("Upload") #text_button.click(flip_text, inputs=text_input, outputs=text_output) #image_button.click(flip_image, inputs=image_input, outputs=image_output) """ demo = gr.ChatInterface( respond ) """ if __name__ == "__main__": demo.launch()