* add aleph alpha to installg guide description
* add aleph alpha to settings to add key
* add settings for alephalpha
* add aleph alpha to models
* add aleph alpha api key to keymap
* no visible changes, removed console.log
* current working copy
* added settings for aleph alpha, added test, working api request
* removed console log
* added static build with Aleph Alpha integration
* added static build with Aleph Alpha integration
* Corrected from ALEPH_ALPHA_KEY to ALEPH_ALPHA_API_KEY
* add additional settings requested
* merge conflicts
* add build to gitignore, best practice, reduces conflicts
* remove empty lines
* Delete chainforge/react-server/build directory
build directory should not be in remote
* remove unnecessary changes
* Update backend.ts
* ...
* fixed import
* add aleph alpha to store, remove available llms from modelsettings, remove double palm key input from globalsettings
* Update to ReactFlow v11
* Add remove button to edge on hover
* Quality of life improvements (#133)
* Quality of life improvements for node and python
* Pinned minor version for mantine modules
* Updated package-lock.json
* Added .gitignore to react-server
* Updated .gitignore to python module
---------
Co-authored-by: ianarawjo <fatso784@gmail.com>
* update gitignore
* Minor fixes to AlephAlpha integration code
* Tested npm i and rebuilt react
* Force commit the react build
* Update package version
---------
Co-authored-by: Denise Wagenführ <denise.wagenfuehr@capgemini.com>
Co-authored-by: fguderia <falko.guderian@capgemini.com>
Co-authored-by: denise710 <53524926+denise710@users.noreply.github.com>
Co-authored-by: wday-cs <119377799+wday-cs@users.noreply.github.com>
* Removed Python backend files that are no longer used (everything in `promptengine`)
* Added `providers` subdomain, with `CustomProviderProtocol`, `provider` decorator, and global singleton `ProviderRegistry`
* Added a tab for custom providers, and a dropzone, in ChainForge global settings UI
* List custom providers in the Global Settings screen once added.
* Added ability to remove custom providers by clicking X.
* Make custom funcs sync but call them async'ly.
* Add Cohere custom provider example in examples/
*Cache the custom provider scripts and load them upon page load
* Rebuild react and update package version
* Bug fix when custom provider is deleted and settings screen is opened on the deleted custom provider
* Add red dot in Inspect Responses footer to indicate something changed
* Abstract out inspect footer button to component
* Add tooltips to AddNode menu items.
* Simple eval wip
* Add menu sections to Add Node. Minor tweaks to simple eval.
* Save state of simple eval when editing fields
* Add 'only show scores' toggle to response inspector
* Change 2 example flows to use simple evals. Fix bg of toolbar buttons.
* Update version and rebuild react
* Add LLM scorer node (#107)
* Modularize the LLM list container, extracting it from prompt node
* Working LLM scorer node
* Bug and minor fixes
* Change modals to use perc left.
* Add inspect response footer to LLMEvalNode.
* Make Play buttons light green
* Fix React errors w keys in JSX arrays
* Add Chat Turn node and support for chat history (#108)
* Adds chat_history across backend's cache and querying mechanisms.
* Adds Chat Turn nodes, which allow for continuing a conversation.
* Adds automatic conversions of ChatHistory (in OpenAI format) to Anthropic and Google PaLM's chat formats. Converts chat history to appropriate format and passes it as context in the API call.
* Bug fix and error popup when missing past convo in Chat Turn
* Bug squashing to progress in chat turn node
* bug squashing
* Color false scores bright red in eval inspector
* fix tooltip when cont chat present
* Rebuild react
* bug fix llm eval node
* Add HF chat model support.
* Show multiple response objs in table inspector view
* Fix LLM item deletion bug
* Rebuild react and update package version
* Fix obscure bug when LLM outputs have no 'llm' property (due to prior CF version)
* Fix isLooselyEqual bug
* Update examples so that their cached 'fields' include llm nicknames
* rebuild react
* Add Chelse to readme
* Make vars in inspect table view multiline
* Choose var to use for columns in table view of resp inspector
* Only default to prompt var as column if num vars > 1
* Rebuild react and update package version
* Invalidate eval node upon upstream changes.
* Chain update pings across nodes. Autoresize textfields when typing.
* Wide output handles when entire node is output
* update package version
* Add tooltip to prompt preview button
* Focus scrollwheel on textfields textareas
* Replace escaped { and } with their bare versions
* Escape braces in tabular data by default. Ignore empty rows.
* Add ability to disable fields on textfields
* Make sure deleting a field deletes its fields_visibility
* Add withinPortal to Tooltips on side-buttons in text fields
* Add Anthropic model Claude-2.
* Share button implementation and testing
* Bug fix for Azure OpenAI (missing `bind` call)
* Change `call_anthropic` to go through server proxy when not running locally
* Cleanup of unused imports
* Fixed bug in Azure OpenAI call
* Update README.md with Share, Play link, etc
* Update package version to 0.2.0.2
* 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
* Flow autosaving every 60 seconds
* Set viewport upon resetFlow
* Added x-axis, y-axis etc header to Vis node. Ensured left padding sizes to shortnames.
* When num gen per prompt = 1, now plots single bar chart w solid LLM color
* Rebuilt react and update package version
* Added asMarkdownAST to ResponseInfo
* Increased margin between LLM responses in response inspector
* Added Inspect Results footer to eval node after run
* Fixed bug when cacheing responses after deleting a model and adding a new one
* Fixed bug in catching error in PromptTemplate's `is_concrete()` method
* Improvements to response inspector UI
* Ensured eval results (scores) are sorted alongside their responses the response inspector UI
* Removed response previews footer, replaced with Inspect responses button
* Prompt and eval nodes now load cached responses upon initialization
* Rebuilt React and raised package version
* Add OpenAI Evals tab to Example Flows pane.
* Add OpenAI evals examples (preconverted).
* Set unique IDs for each oaievals cforge file
* Use contenteditable divs in tables to improve performance.
* Update eval code to use json.loads instead of eval()
* Fix bug with $s in templates
* Update package info and point oaievals to main branch
* Made column headers use contenteditable p tags
* Add requests to dependency list
* Rebuilt react and updated package version
* Also includes start of categorical variables support in vis node
* Collapses same model responses (within `n` responses requested) and provides number of times they appeared
* Adds basic support for OpenAI function calls.
* Adds example flow illustrating OpenAI func calls
* Use Mantine Textarea controlled for Textfields node, instead of textarea
* Added Tabular data node
* TabularData context menus
* Make TabularData template hooks responsive to column name changes.
* Reduced spacing between template hooks
* Better table styling and rename column popup
* Add 'carry with' feature to Prompt Permutation recursive generation using `associate_id`
* Much nicer var tags on inspect window
* Nicer styling for LLM group headers in inspect screen
* Pass metavars around in the backend to surface them to front-end
* Set min-height on inspect node to be larger
* Added in-line print in Eval nodes
* Append error message to print output
* Minor inspect node CSS tweaks and fixes
* Removed mix-blend-mode due to performance issues scrolling large text
* Added ground truth eval example for math problems
* Updated React build and version number
* Lint Python code with ruff (#60)
* Failure progress on Prompt Nodes
* Change PromptNode preview container color
* Ensure LLM colors are unique and the same across nodes
* Reset LLM colors upon flow load
* Add LLM colors to 3D scatterplot
* Extract inspector internals into separate component.
* Added inspect modal.
* Lower rate of failure for dummy LLM responses
* Fix useEffect bug in LLMResponseInspector
* Fix export to excel bug
* Remove dependence on browser support for regex negative lookbehind
* Use monospace font in textareas in Safari
* Fix settings modal bug in FireFox
* Change version
* Update README.md
* Model settings forms
* Editable nicknames and emojis
* Saving and loading model settings
* Temperature indicator on LLM items in PromptNodes
* Ensure LLM nicknames are unique
* Detect when PaLM blocks responses and output standard error msg in response instead
* Fix examples/ to use new cache format
* Add helpful 'could not reach server' text on countQueries fail
* Add Dalai model settings
* Rebuild react and update package version
* Rename main folders
* Preparing for package deployment
* Use absolute paths and imports
* Move react-server into chainforge dir
* Add MANIFEST.in to copy react-server build over to package
* Add include_package_data
* Add manifest.json and icons to /static.
* Update README.md
* Update GUIDE.md