mirror of
https://github.com/ianarawjo/ChainForge.git
synced 2025-03-14 16:26:45 +00:00
* Beginning to convert Python backend to Typescript * Change all fetch() calls to fetch_from_backend switcher * wip converting query.py to query.ts * wip started utils.js conversion. Tested that OpenAI API call works * more progress on converting utils.py to Typescript * jest tests for query, utils, template.ts. Confirmed PromptPipeline works. * wip converting queryLLM in flask_app to TS * Tested queryLLM and StorageCache compressed saving/loading * wip execute() in backend.ts * Added execute() and tested w concrete func. Need to test eval() * Added craco for optional webpack config. Config'd for TypeScript with Node.js packages browserify'd * Execute JS code on iframe sandbox * Tested and working JS Evaluator execution. * wip swapping backends * Tested TypeScript backendgit status! :) woot * Added fetchEnvironAPIKeys to Flask server to fetch os.environ keys when running locally * Route Anthropic calls through Flask when running locally * Added info button to Eval nodes. Rebuilt react * Edits to info modal on Eval node * Remove/error out on Python eval nodes when not running locally. * Check browser compat and display error if not supported * Changed all example flows to use JS. Bug fix in query.ts * Refactored to LLMProvider to streamline model additions * Added HuggingFace models API * Added back Dalai call support, routing through Flask * Remove flask app calls and socketio server that are no longer used * Added Comment Nodes. Rebuilt react. * Fix PaLM temp=0 build, update package vers and rebuild react
1 line
14 KiB
Plaintext
1 line
14 KiB
Plaintext
{"flow": {"nodes": [{"width": 312, "height": 311, "id": "prompt-emoji-riddle", "type": "prompt", "data": {"prompt": "{prompt}", "n": 1, "llms": [{"key": "aa3c0f03-22bd-416e-af4d-4bf5c4278c99", "settings": {"system_msg": "You are an emoji riddle solver. You understand that an emoji riddle consists of finding the word or group of words associated with an association of emojis that is provided with the following format: emoji_1 + ... + emoji_n = ? . Your task is to find the right answer.", "temperature": 1, "functions": [], "function_call": "", "top_p": 1, "stop": [], "presence_penalty": 0, "frequency_penalty": 0}, "name": "GPT3.5", "emoji": "\ud83d\ude42", "model": "gpt-3.5-turbo", "base_model": "gpt-3.5-turbo", "temp": 1, "formData": {"shortname": "GPT3.5", "model": "gpt-3.5-turbo", "system_msg": "You are an emoji riddle solver. You understand that an emoji riddle consists of finding the word or group of words associated with an association of emojis that is provided with the following format: emoji_1 + ... + emoji_n = ? . Your task is to find the right answer.", "temperature": 1, "functions": "", "function_call": "", "top_p": 1, "stop": "", "presence_penalty": 0, "frequency_penalty": 0}}]}, "position": {"x": 448, "y": 224}, "selected": false, "positionAbsolute": {"x": 448, "y": 224}, "dragging": false}, {"width": 333, "height": 182, "id": "eval-emoji-riddle", "type": "evaluator", "data": {"code": "function evaluate(response) {\n\tlet txt = response.text;\n\tlet ideals = JSON.parse(response.meta['Ideal']);\n\treturn ideals.some(i => (i.includes(txt) || txt.includes(i)));\n}", "language": "javascript"}, "position": {"x": 820, "y": 150}, "positionAbsolute": {"x": 820, "y": 150}}, {"width": 228, "height": 196, "id": "vis-emoji-riddle", "type": "vis", "data": {"input": "eval-emoji-riddle"}, "position": {"x": 1200, "y": 250}, "positionAbsolute": {"x": 1200, "y": 250}}, {"width": 302, "height": 260, "id": "inspect-emoji-riddle", "type": "inspect", "data": {"input": "prompt-emoji-riddle"}, "position": {"x": 820, "y": 400}, "positionAbsolute": {"x": 820, "y": 400}}, {"width": 423, "height": 417, "id": "table-emoji-riddle", "type": "table", "data": {"rows": [{"prompt": "\ud83d\udc0d + \ud83e\ude9c = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"snakes and ladders\"]"}, {"prompt": "\u2764\ufe0f + \u2709\ufe0f = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"love letter\"]"}, {"prompt": "\u231a\ufe0f + \ud83d\udc36 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"watchdog\"]"}, {"prompt": "\ud83d\udc40 + \ud83e\ude9a = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"seesaw\"]"}, {"prompt": "\u2600\ufe0f + \ud83d\udd76\ufe0f = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"sunglasses\"]"}, {"prompt": "\u2708\ufe0f + \ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb3 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"plain jane\"]"}, {"prompt": "\ud83d\udcfc + \ud83d\udc1b = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"tapeworm\"]"}, {"prompt": "\ud83c\udf0e + \ud83c\udfc6 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"world cup\"]"}, {"prompt": "\ud83d\udccf + \ud83d\udcd5 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"rulebook\"]"}, {"prompt": "\ud83c\uddeb\ud83c\uddf7 + \ud83c\udf5e = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"french toast\"]"}, {"prompt": "\ud83d\udd73\ufe0f + 1\ufe0f\u20e3 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"hole in one\"]"}, {"prompt": "\u26f0\ufe0f + \ud83d\udca6 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"mountain dew\"]"}, {"prompt": "\u2b50\ufe0f + \ud83e\ude99 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"starbucks\"]"}, {"prompt": "\ud83d\udc41\ufe0f + \ud83c\udfc0 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"eyeball\"]"}, {"prompt": "\ud83d\udc04 + \ud83d\udc67\ud83c\udffb = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"cowgirl\"]"}, {"prompt": "\ud83d\udc7b + \ud83c\udfe0 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"haunted house\"]"}, {"prompt": "\ud83e\uddc8 + \ud83e\udeb0 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"butterfly\"]"}, {"prompt": "\ud83c\udf32 + \ud83c\udfe0 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"treehouse\"]"}, {"prompt": "\ud83c\udff0 + \ud83c\udf03 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"fortnite\"]"}, {"prompt": "\ud83e\udea8 + \u2b50\ufe0f = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"rock star\"]"}, {"prompt": "\u2744\ufe0f + \u2615\ufe0f = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"ice tea\"]"}, {"prompt": "\u2615\ufe0f + \ud83d\udc94 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"coffee break\"]"}, {"prompt": "\ud83d\udc1d + \u27a1\ufe0f + \ud83d\udd19 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"be right back\"]"}, {"prompt": "\ud83e\uddb6\ud83c\udffb + \u26bd\ufe0f + \ud83c\udfae = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"football game\"]"}, {"prompt": "\u25c0\ufe0f + 2\ufe0f\u20e3 + \u23f9\ufe0f +1\ufe0f\u20e3 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"back to square one\"]"}, {"prompt": "\ud83c\udf27\ufe0f + \ud83d\udc31 + \ud83d\udc36 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"raining cats and dogs\"]"}, {"prompt": "\ud83e\udef4\ud83c\udffb\u26be\ufe0f + 2\ufe0f\u20e32\ufe0f\u20e3 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"catch 22\"]"}, {"prompt": "\ud83d\udd70\ufe0f\ud83c\udfc5 + \ud83d\udd4a\ufe0f + \ud83e\udeb1 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"the early bird catches the worm\"]"}, {"prompt": "\ud83e\udea8 + \ud83d\udd11 + \ud83d\udee3\ufe0f = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"rocky road\"]"}, {"prompt": "\ud83d\udc74\ud83c\udffb \u27a1\ufe0f \u26f2\ufe0f \u27a1\ufe0f \ud83d\udc66\ud83c\udffb = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"fountain of youth\"]"}, {"prompt": "\ud83d\udc46\ud83c\udffc + \ud83d\udd35 + \ud83c\udf15 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"once in a blue moon\"]"}, {"prompt": "\ud83c\udf15 + \ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb0\u27a1\ufe0f\ud83d\udc3a = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"werewolf\"]"}, {"prompt": "\ud83d\udd8a\ufe0f\ud83d\udcaa\ud83c\udffb + \ud83d\udeab\ud83d\udde1\ufe0f = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"the pen is mightier than the sword\"]"}, {"prompt": "\ud83d\udcb5\ud83d\udeab\ud83c\udf32 = ? \n Your answer should strictly only contain the group of words associated with the answer, no additional words. Don't add `The answer is`. don't add a period at the end of your answer. everything should be lowercase", "ideal": "[\"money doesn\\u2019t grow on trees\"]"}], "columns": [{"key": "prompt", "header": "Prompt"}, {"key": "ideal", "header": "Ideal"}]}, "position": {"x": -16, "y": 160}, "selected": false, "positionAbsolute": {"x": -16, "y": 160}, "dragging": false}], "edges": [{"source": "prompt-emoji-riddle", "sourceHandle": "prompt", "target": "eval-emoji-riddle", "targetHandle": "responseBatch", "interactionWidth": 100, "markerEnd": {"type": "arrow", "width": "22px", "height": "22px"}, "id": "reactflow__edge-prompt-1686756357355prompt-eval-1686756357355responseBatch"}, {"source": "prompt-emoji-riddle", "sourceHandle": "prompt", "target": "inspect-emoji-riddle", "targetHandle": "input", "interactionWidth": 100, "markerEnd": {"type": "arrow", "width": "22px", "height": "22px"}, "id": "reactflow__edge-prompt-1686756357355prompt-inspect-1686756357355input"}, {"source": "eval-emoji-riddle", "sourceHandle": "output", "target": "vis-emoji-riddle", "targetHandle": "input", "interactionWidth": 100, "markerEnd": {"type": "arrow", "width": "22px", "height": "22px"}, "id": "reactflow__edge-eval-1686756357355output-vis-1686756357355input"}, {"source": "table-emoji-riddle", "sourceHandle": "Prompt", "target": "prompt-emoji-riddle", "targetHandle": "prompt", "interactionWidth": 100, "markerEnd": {"type": "arrow", "width": "22px", "height": "22px"}, "id": "reactflow__edge-table-1686756385002Prompt-prompt-1686756357355prompt"}], "viewport": {"x": 144, "y": 37, "zoom": 1}}, "cache": {"eval-1686756357355.json": {}, "inspect-1686756357355.json": {}, "prompt-1686756357355.json": {}, "table-1686756385002.json": {}, "vis-1686756357355.json": {}}} |