Spaces:
Running
on
Zero
Running
on
Zero
kwabs22
commited on
Commit
·
093cc88
1
Parent(s):
34d7bf7
Refactor Proto Assist accordion to absorb mess
Browse files
app.py
CHANGED
@@ -363,13 +363,13 @@ def show_elements_json_input(json_input):
|
|
363 |
"developernotes": json.loads(current_values[i*num_current_unique_fields + 5])
|
364 |
}
|
365 |
updated_data["masterlocation1"]["end"] = masterlocation1["end"]
|
366 |
-
return json.dumps(updated_data,
|
367 |
|
368 |
update_button = gr.Button("Update JSON")
|
369 |
-
|
370 |
-
json_output = gr.Code(label="Updated JSON", lines=10) #
|
371 |
|
372 |
-
update_button.click(update_json, inputs=outputs, outputs=json_output)
|
373 |
|
374 |
return outputs + [update_button, json_output] #, json_output_code]
|
375 |
|
@@ -769,57 +769,71 @@ with gr.Blocks() as demo:
|
|
769 |
</div>""")
|
770 |
|
771 |
with gr.Accordion("Config and Asset Assistance - Click to open", open=False):
|
772 |
-
with gr.Accordion("
|
|
|
|
|
773 |
gr.HTML("UI can be media and all items can have media")
|
774 |
-
with gr.
|
775 |
-
gr.
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
gr.
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
gr.
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
823 |
|
824 |
with gr.Accordion("Old Ideas to merge", open=False):
|
825 |
gr.HTML("Random Scenario / Song to 'full game' manual or auto is end goal ")
|
@@ -895,17 +909,9 @@ with gr.Blocks() as demo:
|
|
895 |
outputs=[llmguide_output, llmguide_tokens_per_second],
|
896 |
)
|
897 |
|
898 |
-
with gr.Accordion("
|
899 |
-
with gr.
|
900 |
-
|
901 |
-
mermaideditoriframebtn = gr.Button("Load Mermaid Editor")
|
902 |
-
mermaideditoriframe = gr.HTML("")
|
903 |
-
mermaideditoriframebtn.click(fn=lambda x: "<iframe src='https://mermaid.live/' width='100%' height='1000px'></iframe>", outputs=mermaideditoriframe)
|
904 |
-
with gr.Accordion("Mermaid Structures - click to open", open=False):
|
905 |
-
for key, item in mermaidstorystructures.items():
|
906 |
-
gr.Code(item, label=key)
|
907 |
-
|
908 |
-
with gr.Accordion("Test for config to gradio components order - ignore for now", open=False ):
|
909 |
gr.Markdown("Asset Generation")
|
910 |
gr.HTML("Splits by new line - The idea here was to allow for saving the file ")
|
911 |
input_text = gr.Textbox(label="Input Text", lines=10)
|
@@ -914,8 +920,6 @@ with gr.Blocks() as demo:
|
|
914 |
@gr.render(inputs=input_text)
|
915 |
def update(text):
|
916 |
return show_elements(text)
|
917 |
-
|
918 |
-
with gr.Accordion("Existing Config Crafting Progression - click to open", open=False):
|
919 |
with gr.Tab("Quick Ways to evaluate current config"):
|
920 |
gr.HTML("Ask SOTA LLMs This prompt: <br> This config is for a basic text based game engine. I dont have any structural metrics to assess the quality of the config. What JSON things can we look at to see if it may be too bland for a person testing the game? <br> Then Paste the Config with the prompt")
|
921 |
gr.HTML("""Original Claude 3.5 Sonnet Response snippets: <br>
|
@@ -956,53 +960,54 @@ Creating more diverse paths through the game""")
|
|
956 |
</div>""")
|
957 |
|
958 |
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
|
964 |
-
|
965 |
-
|
966 |
-
|
967 |
-
with gr.Tab("File Explorer"):
|
968 |
-
|
969 |
-
file_explorer = gr.FileExplorer(
|
970 |
-
root_dir=SAVE_DIR,
|
971 |
-
glob="*.*",
|
972 |
-
file_count="single",
|
973 |
-
height=300,
|
974 |
-
label="Select a file to view"
|
975 |
-
)
|
976 |
-
with gr.Row():
|
977 |
-
refresh_button = gr.Button("Refresh", scale=1)
|
978 |
-
view_button = gr.Button("View File")
|
979 |
-
image_output = gr.Image(label="Image Output", type="pil")
|
980 |
-
audio_output = gr.Audio(label="Audio Output")
|
981 |
-
video_output = gr.Video(label="Video Output")
|
982 |
-
error_output = gr.Textbox(label="Error")
|
983 |
-
|
984 |
-
file_input.upload(
|
985 |
-
save_file,
|
986 |
-
inputs=file_input,
|
987 |
-
outputs=[save_output, file_explorer, file_input]
|
988 |
-
)
|
989 |
-
|
990 |
-
view_button.click(
|
991 |
-
view_file,
|
992 |
-
inputs=file_explorer,
|
993 |
-
outputs=[image_output, audio_output, video_output, error_output]
|
994 |
-
)
|
995 |
|
996 |
-
|
997 |
-
|
998 |
-
|
|
|
|
|
|
|
|
|
|
|
999 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1000 |
|
1001 |
-
with gr.Tab("Batch add files to config"):
|
1002 |
-
gr.HTML("Placeholder for Config parser to allow dropdowns for the media parts of the config inserted to make assigning media quick")
|
1003 |
-
gr.HTML("Placeholder for Config parser to allow for current zerospace creation and placement into the config (LLM can give list of media but still have to figure out workflow from there)")
|
1004 |
-
|
1005 |
-
gr.HTML("Placeholder for clearing uploaded assets (public space and temporary persistence = sharing and space problems)")
|
1006 |
with gr.Accordion("My Previous Quick Config Attempts", open=False):
|
1007 |
for experimetal_config_name, experimetal_config in ExampleGameConfigs.items():
|
1008 |
with gr.Tab(experimetal_config_name):
|
@@ -1153,15 +1158,18 @@ Creating more diverse paths through the game""")
|
|
1153 |
ewpgenerate_button.click(generate_story_and_timeline, inputs=[ewpgenerate_no_ui_timeline_points, ewpgenerate_no_media_timeline_points, ewpgenerate_with_media_check], outputs=[ewptimeline_output_with_assets, ewptimeline_output, ewpstory_output, ewpwacustom_config, ewpgame_structure_output_text]) #ewpgame_structure_output_text_with_media, ewpgame_structure_output_text])
|
1154 |
|
1155 |
with gr.Tab("Asset Generation Considerations"):
|
1156 |
-
gr.
|
|
|
|
|
1157 |
gr.HTML("Whole game engine in a space? - https://huggingface.co/spaces/thomwolf/test_godot_editor <br><br> https://huggingface.co/godot-demo https://huggingface.co/spaces/thomwolf/test_godot")
|
1158 |
with gr.Tab("Text-based"):
|
|
|
1159 |
with gr.Accordion("LLM HF Spaces/Sites (Click Here to Open) - Ask for a story and suggestions based on the autoconfig", open=False):
|
1160 |
with gr.Row():
|
1161 |
linktochat = gr.Dropdown(choices=["--Multiple Models--", "https://labs.perplexity.ai/", "https://chat.lmsys.org", "https://sdk.vercel.ai/docs", "https://cyzgab-catch-me-if-you-can.hf.space",
|
1162 |
"--70B and above--", "https://qwen-qwen-max-0428.hf.space", "https://cohereforai-c4ai-command-r-plus.hf.space", "https://qwen-qwen1-5-110b-chat-demo.hf.space", "https://snowflake-snowflake-arctic-st-demo.hf.space", "https://databricks-dbrx-instruct.hf.space", "https://qwen-qwen1-5-72b-chat.hf.space",
|
1163 |
"--20B and above--", "https://gokaygokay-gemma-2-llamacpp.hf.space", "https://01-ai-yi-34b-chat.hf.space", "https://cohereforai-c4ai-command-r-v01.hf.space", "https://ehristoforu-mixtral-46-7b-chat.hf.space", "https://mosaicml-mpt-30b-chat.hf.space",
|
1164 |
-
"--7B and above--", "https://ysharma-chat-with-meta-llama3-8b.hf.space", "https://qwen-qwen1-5-moe-a2-7b-chat-demo.hf.space", "https://deepseek-ai-deepseek-coder-7b-instruct.hf.space", "https://osanseviero-mistral-super-fast.hf.space", "https://artificialguybr-qwen-14b-chat-demo.hf.space", "https://huggingface-projects-llama-2-7b-chat.hf.space",
|
1165 |
"--1B and above--", "https://huggingface.co/spaces/eswardivi/Phi-3-mini-128k-instruct", "https://eswardivi-phi-3-mini-4k-instruct.hf.space", "https://stabilityai-stablelm-2-1-6b-zephyr.hf.space",
|
1166 |
"--under 1B--", "unorganised", "https://ysharma-zephyr-playground.hf.space", "https://huggingfaceh4-zephyr-chat.hf.space", "https://ysharma-explore-llamav2-with-tgi.hf.space", "https://huggingfaceh4-falcon-chat.hf.space", "https://uwnlp-guanaco-playground-tgi.hf.space", "https://stabilityai-stablelm-tuned-alpha-chat.hf.space", "https://mosaicml-mpt-7b-storywriter.hf.space", "https://huggingfaceh4-starchat-playground.hf.space", "https://bigcode-bigcode-playground.hf.space", "https://mosaicml-mpt-7b-chat.hf.space", "https://huggingchat-chat-ui.hf.space", "https://togethercomputer-openchatkit.hf.space"], label="Choose/Cancel type any .hf.space link here (can also type a link)'", allow_custom_value=True)
|
1167 |
chatspacebtn = gr.Button("Use the chosen URL to load interface with a chat model. For sdk.vercel click the chat button on the top left. For lymsys / chat arena copy the link and use a new tab")
|
@@ -1263,7 +1271,9 @@ Creating more diverse paths through the game""")
|
|
1263 |
with gr.Tab("3D"):
|
1264 |
with gr.Accordion("3D Model Spaces/Sites (Click Here to Open)", open=False):
|
1265 |
with gr.Row():
|
1266 |
-
linktoThreedModel = gr.Dropdown(choices=["
|
|
|
|
|
1267 |
ThreedModelspacebtn = gr.Button("Use the chosen URL to load interface with a 3D model")
|
1268 |
ThreedModelspace = gr.HTML("3D Space Chosen will load here")
|
1269 |
ThreedModelspacebtn.click(display_website, inputs=linktoThreedModel, outputs=ThreedModelspace)
|
@@ -1285,7 +1295,7 @@ Creating more diverse paths through the game""")
|
|
1285 |
|
1286 |
with gr.Tab("Demos on Social Media for inspiration"):
|
1287 |
gr.HTML("Social media that shows possiblities")
|
1288 |
-
gr.HTML("https://x.com/blizaine")
|
1289 |
|
1290 |
with gr.Tab("Basic Game Engine Mechanics"):
|
1291 |
gr.HTML("Placeholder for explanations of Player and Game Session")
|
@@ -1388,6 +1398,7 @@ Creating more diverse paths through the game""")
|
|
1388 |
with gr.Tab("State management through huggingface?"):
|
1389 |
gr.HTML("Huggingface as the login provider? - https://huggingface.co/docs/hub/en/spaces-oauth https://huggingface.co/docs/hub/en/oauth, persistent storage - https://huggingface.co/docs/hub/en/spaces-storage")
|
1390 |
with gr.Tab("Finetuning options"):
|
|
|
1391 |
gr.HTML("Price - https://openpipe.ai/pricing")
|
1392 |
with gr.Tab("Backend and/or Hosting?"):
|
1393 |
gr.HTML("Deployemnt options - https://huggingface.co/SpacesExamples", "https://huggingface.co/templates")
|
|
|
363 |
"developernotes": json.loads(current_values[i*num_current_unique_fields + 5])
|
364 |
}
|
365 |
updated_data["masterlocation1"]["end"] = masterlocation1["end"]
|
366 |
+
return json.dumps(updated_data, indent=2) #json.dumps(updated_data, default=lambda o: o.__dict__, indent=2)
|
367 |
|
368 |
update_button = gr.Button("Update JSON")
|
369 |
+
json_output = gr.Textbox(label="Updated JSON", lines=10)
|
370 |
+
#json_output = gr.Code(label="Updated JSON", lines=10) #Locks whole UI so use textbox
|
371 |
|
372 |
+
update_button.click(update_json, inputs=outputs, outputs=json_output)
|
373 |
|
374 |
return outputs + [update_button, json_output] #, json_output_code]
|
375 |
|
|
|
769 |
</div>""")
|
770 |
|
771 |
with gr.Accordion("Config and Asset Assistance - Click to open", open=False):
|
772 |
+
with gr.Accordion("Themes to consider before you attempt config", open=False):
|
773 |
+
gr.HTML("Copy paste any old config to llm and ask to remix is the easiest <br>To bake 'Moral of the story' in you have to be very deliberate")
|
774 |
+
with gr.Accordion("New Config Proto Assist - Trying to abstract the process into one worflow is beyond me so multiple paths to goal (config) is the aim now", open=False):
|
775 |
gr.HTML("UI can be media and all items can have media")
|
776 |
+
with gr.Tab("List to Empty Config with Edit support - Linear"):
|
777 |
+
with gr.Accordion("Can copy in the Test Example State Machine tab - only linear path for now", open=False):
|
778 |
+
gr.Markdown("# Story and Timeline Generator")
|
779 |
+
gr.Markdown("Click the button to generate a random timeline and story based on UI elements and story events. <br>Ask an LLM to use this to write a story around")
|
780 |
+
with gr.Row():
|
781 |
+
game_structure_output_text_with_media = gr.Code(language="json")
|
782 |
+
#game_structure_output_text = gr.Code(language="json")
|
783 |
+
with gr.Accordion("JSON with no edits"):
|
784 |
+
gr.HTML("A long game is a bunch of short games")
|
785 |
+
with gr.Row():
|
786 |
+
timeline_output_with_assets = gr.Textbox(label="Timeline with Assets Considered (gaps = side quests)", lines=25)
|
787 |
+
#timeline_output = gr.Textbox(label="Timeline (Order might be different for now)", lines=20)
|
788 |
+
with gr.Column():
|
789 |
+
timeline_output_text = gr.Textbox(label="Random Suggestions", lines=10)
|
790 |
+
timeline_selected_lists_text = gr.Textbox(label="Selected Lists", lines=2)
|
791 |
+
story_output = gr.Textbox(label="Generated Story (Order might be different for now)", lines=20)
|
792 |
+
with gr.Row():
|
793 |
+
generate_no_story_timeline_points = gr.Slider(minimum=1, value=10, step=1, maximum=30, label="Choose the amount of story timeline points")
|
794 |
+
generate_no_ui_timeline_points = gr.Slider(minimum=1, value=10, step=1, maximum=30, label="Choose the amount of ui timeline points")
|
795 |
+
#generate_no_media_timeline_points = gr.Slider(minimum=1, value=5, step=1, maximum=30, label="Choose the amount of media timeline points")
|
796 |
+
#generate_with_media_check = gr.Checkbox(label="Generate with media", value=True)
|
797 |
+
with gr.Row():
|
798 |
+
timeline_num_lists_slider = gr.Slider(minimum=1, maximum=len(all_idea_lists), step=1, label="Number of Lists to Consider", value=3)
|
799 |
+
timeline_items_per_list_slider = gr.Slider(minimum=1, maximum=10, step=1, label="Items per List", value=3)
|
800 |
+
timeline_include_existing_games = gr.Checkbox(label="Include Existing Game Inspirations", value=True)
|
801 |
+
timeline_include_multiplayer = gr.Checkbox(label="Include Multiplayer Features", value=True)
|
802 |
+
# timeline_generate_button = gr.Button("Generate Random Suggestions").click(
|
803 |
+
# timeline_get_random_suggestions,
|
804 |
+
# inputs=[timeline_num_lists_slider, timeline_items_per_list_slider, timeline_include_existing_games, timeline_include_multiplayer],
|
805 |
+
# outputs=[timeline_output_text, timeline_selected_lists_text]
|
806 |
+
# )
|
807 |
+
generate_button = gr.Button("Generate Story and Timeline (Click to get UI that will assist with JSON formatting)")
|
808 |
+
|
809 |
+
@gr.render(inputs=game_structure_output_text_with_media)
|
810 |
+
def update(game_structure_output_text_with_media):
|
811 |
+
return show_elements_json_input(game_structure_output_text_with_media)
|
812 |
+
|
813 |
+
generate_button.click(generate_story_and_timeline, inputs=[generate_no_story_timeline_points, generate_no_ui_timeline_points, timeline_num_lists_slider, timeline_items_per_list_slider, timeline_include_existing_games, timeline_include_multiplayer], outputs=[timeline_output_with_assets, story_output, game_structure_output_text_with_media, timeline_output_text, timeline_selected_lists_text]) #, generate_no_media_timeline_points, generate_with_media_check], outputs=[timeline_output_with_assets, timeline_output, story_output, game_structure_output_text_with_media, game_structure_output_text])
|
814 |
+
|
815 |
+
with gr.Tab("Prompt Engineering as basis for ideation process"):
|
816 |
+
gr.HTML("Current Assited workflow idea - Story timeline events suggestions (LLM / Premade List) | Merging events with premade mermaid structures (LLM + Story Text + Mermaid Text) | Edit mermaid till satisfied (LLM + Story Text) | Ask LLM to convert to config (LLM + JSON Text) | Edit config (LLM / User with format assistance or not) | Playtest and go back to mermaaid or config if there are problems")
|
817 |
+
gr.HTML("Interactive movie (UI interaction or no progress) vs Branching Paths (Maze)")
|
818 |
+
gr.HTML("Things that can change the workflow - Asset First (Make Asset and make the transitions using LLM), Export First (Custom JS config, Playcanvas, Unreal Engine reverse engineered to this spaces config?) Game Mechanics First (eg. Player Stats, Inventory and NPCS not implemented yet, so traversal type games best aka graph like structures)")
|
819 |
+
gr.HTML("Config writing = Remix old one, Ask LLM to make one, Endless combination testing using the prompt engineering above or writing by hand (prompt engineering on yourself)")
|
820 |
+
gr.HTML("Can use song lyrics as thematic source")
|
821 |
+
gr.HTML("Placeholder for each below prompt getting a Textbox")
|
822 |
+
for item in Storycraftprompts:
|
823 |
+
input = gr.State(item)
|
824 |
+
output = gr.Textbox("", label=item)
|
825 |
+
outputbtn = gr.Button(item).click(fn=llmguide_generate_response, inputs=input, outputs=output)
|
826 |
+
|
827 |
+
#with gr.Accordion("Decisions / Timeline Creation to Story to Config Conversation", open=False):
|
828 |
+
with gr.Tab("Decisions / Timeline Creation to Story to Config Conversation"):
|
829 |
+
gr.HTML("Structures for interesting timeline progression")
|
830 |
+
gr.HTML("Placeholder - Considerations - Story from the perspective of Main character or NPC in the LLM genereated story")
|
831 |
+
mermaideditoriframebtn = gr.Button("Load Mermaid Editor")
|
832 |
+
mermaideditoriframe = gr.HTML("")
|
833 |
+
mermaideditoriframebtn.click(fn=lambda x: "<iframe src='https://mermaid.live/' width='100%' height='1000px'></iframe>", outputs=mermaideditoriframe)
|
834 |
+
with gr.Accordion("Mermaid Structures - click to open", open=False):
|
835 |
+
for key, item in mermaidstorystructures.items():
|
836 |
+
gr.Code(item, label=key)
|
837 |
|
838 |
with gr.Accordion("Old Ideas to merge", open=False):
|
839 |
gr.HTML("Random Scenario / Song to 'full game' manual or auto is end goal ")
|
|
|
909 |
outputs=[llmguide_output, llmguide_tokens_per_second],
|
910 |
)
|
911 |
|
912 |
+
with gr.Accordion("Existing Config Crafting Progression - click to open", open=False):
|
913 |
+
with gr.Accordion("Test for config to gradio components order - ignore for now", open=False ):
|
914 |
+
gr.HTML("Placeholder for changing the render below to the one above for new config but with the ability to upload files aka the media field should be file uploader / dropdowns for all files that have been uploaded")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
915 |
gr.Markdown("Asset Generation")
|
916 |
gr.HTML("Splits by new line - The idea here was to allow for saving the file ")
|
917 |
input_text = gr.Textbox(label="Input Text", lines=10)
|
|
|
920 |
@gr.render(inputs=input_text)
|
921 |
def update(text):
|
922 |
return show_elements(text)
|
|
|
|
|
923 |
with gr.Tab("Quick Ways to evaluate current config"):
|
924 |
gr.HTML("Ask SOTA LLMs This prompt: <br> This config is for a basic text based game engine. I dont have any structural metrics to assess the quality of the config. What JSON things can we look at to see if it may be too bland for a person testing the game? <br> Then Paste the Config with the prompt")
|
925 |
gr.HTML("""Original Claude 3.5 Sonnet Response snippets: <br>
|
|
|
960 |
</div>""")
|
961 |
|
962 |
|
963 |
+
with gr.Accordion("Temporary Asset Management Assist - click to open", open=False):
|
964 |
+
gr.HTML("Make Files and Text ideas for the field and paste <br>When Space is restarted it will clear - zip export and import will be added later")
|
965 |
+
with gr.Accordion("Upload Files for config"):
|
966 |
+
gr.Markdown("# Media Saver and Explorer (refresh file list to be resolved - for now upload all files and reload the space - they persist as long as the space creator doesnt reset/update the space - will add manual clear options later)")
|
967 |
+
with gr.Tab("Upload Files"):
|
968 |
+
file_input = gr.File(label="Choose File to Upload")
|
969 |
+
save_output = gr.Textbox(label="Upload Status")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
970 |
|
971 |
+
with gr.Tab("File Explorer"):
|
972 |
+
|
973 |
+
file_explorer = gr.FileExplorer(
|
974 |
+
root_dir=SAVE_DIR,
|
975 |
+
glob="*.*",
|
976 |
+
file_count="single",
|
977 |
+
height=300,
|
978 |
+
label="Select a file to view"
|
979 |
)
|
980 |
+
with gr.Row():
|
981 |
+
refresh_button = gr.Button("Refresh", scale=1)
|
982 |
+
view_button = gr.Button("View File")
|
983 |
+
image_output = gr.Image(label="Image Output", type="pil")
|
984 |
+
audio_output = gr.Audio(label="Audio Output")
|
985 |
+
video_output = gr.Video(label="Video Output")
|
986 |
+
error_output = gr.Textbox(label="Error")
|
987 |
+
|
988 |
+
file_input.upload(
|
989 |
+
save_file,
|
990 |
+
inputs=file_input,
|
991 |
+
outputs=[save_output, file_explorer, file_input]
|
992 |
+
)
|
993 |
+
|
994 |
+
view_button.click(
|
995 |
+
view_file,
|
996 |
+
inputs=file_explorer,
|
997 |
+
outputs=[image_output, audio_output, video_output, error_output]
|
998 |
+
)
|
999 |
+
|
1000 |
+
refresh_button.click(
|
1001 |
+
refresh_file_explorer,
|
1002 |
+
outputs=file_explorer
|
1003 |
+
)
|
1004 |
+
|
1005 |
+
with gr.Tab("Batch add files to config"):
|
1006 |
+
gr.HTML("Placeholder for Config parser to allow dropdowns for the media parts of the config inserted to make assigning media quick")
|
1007 |
+
gr.HTML("Placeholder for Config parser to allow for current zerospace creation and placement into the config (LLM can give list of media but still have to figure out workflow from there)")
|
1008 |
+
|
1009 |
+
gr.HTML("Placeholder for clearing uploaded assets (public space and temporary persistence = sharing and space problems)")
|
1010 |
|
|
|
|
|
|
|
|
|
|
|
1011 |
with gr.Accordion("My Previous Quick Config Attempts", open=False):
|
1012 |
for experimetal_config_name, experimetal_config in ExampleGameConfigs.items():
|
1013 |
with gr.Tab(experimetal_config_name):
|
|
|
1158 |
ewpgenerate_button.click(generate_story_and_timeline, inputs=[ewpgenerate_no_ui_timeline_points, ewpgenerate_no_media_timeline_points, ewpgenerate_with_media_check], outputs=[ewptimeline_output_with_assets, ewptimeline_output, ewpstory_output, ewpwacustom_config, ewpgame_structure_output_text]) #ewpgame_structure_output_text_with_media, ewpgame_structure_output_text])
|
1159 |
|
1160 |
with gr.Tab("Asset Generation Considerations"):
|
1161 |
+
with gr.Row():
|
1162 |
+
gr.HTML("Licenses for the spaces still to be evaluated - June 2024 <br> Users to follow with cool spaces - <br>https://huggingface.co/osanseviero - https://huggingface.co/spaces/osanseviero/TheMLGame <br>https://huggingface.co/jbilcke-hf <br>https://huggingface.co/dylanebert <br>https://huggingface.co/fffiloni <br>https://huggingface.co/artificialguybr <br>https://huggingface.co/radames <br>https://huggingface.co/multimodalart, ")
|
1163 |
+
gr.HTML("Some Youtube Channels to keep up with updates <br><br>https://www.youtube.com/@lev-selector <br>https://www.youtube.com/@fahdmirza/videos")
|
1164 |
gr.HTML("Whole game engine in a space? - https://huggingface.co/spaces/thomwolf/test_godot_editor <br><br> https://huggingface.co/godot-demo https://huggingface.co/spaces/thomwolf/test_godot")
|
1165 |
with gr.Tab("Text-based"):
|
1166 |
+
gr.HTML("Some Benchmark Leaderboards - https://huggingface.co/spaces/allenai/ZebraLogic | https://huggingface.co/spaces/allenai/WildBench")
|
1167 |
with gr.Accordion("LLM HF Spaces/Sites (Click Here to Open) - Ask for a story and suggestions based on the autoconfig", open=False):
|
1168 |
with gr.Row():
|
1169 |
linktochat = gr.Dropdown(choices=["--Multiple Models--", "https://labs.perplexity.ai/", "https://chat.lmsys.org", "https://sdk.vercel.ai/docs", "https://cyzgab-catch-me-if-you-can.hf.space",
|
1170 |
"--70B and above--", "https://qwen-qwen-max-0428.hf.space", "https://cohereforai-c4ai-command-r-plus.hf.space", "https://qwen-qwen1-5-110b-chat-demo.hf.space", "https://snowflake-snowflake-arctic-st-demo.hf.space", "https://databricks-dbrx-instruct.hf.space", "https://qwen-qwen1-5-72b-chat.hf.space",
|
1171 |
"--20B and above--", "https://gokaygokay-gemma-2-llamacpp.hf.space", "https://01-ai-yi-34b-chat.hf.space", "https://cohereforai-c4ai-command-r-v01.hf.space", "https://ehristoforu-mixtral-46-7b-chat.hf.space", "https://mosaicml-mpt-30b-chat.hf.space",
|
1172 |
+
"--7B and above--", "https://vilarin-mistral-nemo.hf.space", "https://ysharma-chat-with-meta-llama3-8b.hf.space", "https://qwen-qwen1-5-moe-a2-7b-chat-demo.hf.space", "https://deepseek-ai-deepseek-coder-7b-instruct.hf.space", "https://osanseviero-mistral-super-fast.hf.space", "https://artificialguybr-qwen-14b-chat-demo.hf.space", "https://huggingface-projects-llama-2-7b-chat.hf.space",
|
1173 |
"--1B and above--", "https://huggingface.co/spaces/eswardivi/Phi-3-mini-128k-instruct", "https://eswardivi-phi-3-mini-4k-instruct.hf.space", "https://stabilityai-stablelm-2-1-6b-zephyr.hf.space",
|
1174 |
"--under 1B--", "unorganised", "https://ysharma-zephyr-playground.hf.space", "https://huggingfaceh4-zephyr-chat.hf.space", "https://ysharma-explore-llamav2-with-tgi.hf.space", "https://huggingfaceh4-falcon-chat.hf.space", "https://uwnlp-guanaco-playground-tgi.hf.space", "https://stabilityai-stablelm-tuned-alpha-chat.hf.space", "https://mosaicml-mpt-7b-storywriter.hf.space", "https://huggingfaceh4-starchat-playground.hf.space", "https://bigcode-bigcode-playground.hf.space", "https://mosaicml-mpt-7b-chat.hf.space", "https://huggingchat-chat-ui.hf.space", "https://togethercomputer-openchatkit.hf.space"], label="Choose/Cancel type any .hf.space link here (can also type a link)'", allow_custom_value=True)
|
1175 |
chatspacebtn = gr.Button("Use the chosen URL to load interface with a chat model. For sdk.vercel click the chat button on the top left. For lymsys / chat arena copy the link and use a new tab")
|
|
|
1271 |
with gr.Tab("3D"):
|
1272 |
with gr.Accordion("3D Model Spaces/Sites (Click Here to Open)", open=False):
|
1273 |
with gr.Row():
|
1274 |
+
linktoThreedModel = gr.Dropdown(choices=["--Image prompt--", "https://vast-ai-charactergen.hf.space"
|
1275 |
+
"--Video prompt--", "https://facebook-vggsfm.hf.space",
|
1276 |
+
"--Text prompt--", "https://wuvin-unique3d.hf.space", "https://stabilityai-triposr.hf.space", "https://hysts-shap-e.hf.space", "https://tencentarc-instantmesh.hf.space", "https://ashawkey-lgm.hf.space", "https://dylanebert-lgm-mini.hf.space", "https://dylanebert-splat-to-mesh.hf.space", "https://dylanebert-multi-view-diffusion.hf.space"], label="Choose/Cancel type any .hf.space link here (can also type a link)'", allow_custom_value=True)
|
1277 |
ThreedModelspacebtn = gr.Button("Use the chosen URL to load interface with a 3D model")
|
1278 |
ThreedModelspace = gr.HTML("3D Space Chosen will load here")
|
1279 |
ThreedModelspacebtn.click(display_website, inputs=linktoThreedModel, outputs=ThreedModelspace)
|
|
|
1295 |
|
1296 |
with gr.Tab("Demos on Social Media for inspiration"):
|
1297 |
gr.HTML("Social media that shows possiblities")
|
1298 |
+
gr.HTML("https://www.reddit.com/r/aivideo/ https://www.reddit.com/r/StableDiffusion/ https://www.reddit.com/r/midjourney/ https://x.com/blizaine")
|
1299 |
|
1300 |
with gr.Tab("Basic Game Engine Mechanics"):
|
1301 |
gr.HTML("Placeholder for explanations of Player and Game Session")
|
|
|
1398 |
with gr.Tab("State management through huggingface?"):
|
1399 |
gr.HTML("Huggingface as the login provider? - https://huggingface.co/docs/hub/en/spaces-oauth https://huggingface.co/docs/hub/en/oauth, persistent storage - https://huggingface.co/docs/hub/en/spaces-storage")
|
1400 |
with gr.Tab("Finetuning options"):
|
1401 |
+
gr.HTML("Unsloth and Colab? - Mistral Nemo Base - https://huggingface.co/unsloth/Mistral-Nemo-Base-2407 - https://colab.research.google.com/drive/17d3U-CAIwzmbDRqbZ9NnpHxCkmXB6LZ0?usp=sharing <br>Llama 3 8B https://huggingface.co/unsloth/llama-3-8b-Instruct-bnb-4bit")
|
1402 |
gr.HTML("Price - https://openpipe.ai/pricing")
|
1403 |
with gr.Tab("Backend and/or Hosting?"):
|
1404 |
gr.HTML("Deployemnt options - https://huggingface.co/SpacesExamples", "https://huggingface.co/templates")
|