93 Commits

Author SHA1 Message Date
Ian Arawjo
37972d54a3 Make sure ordering considers vars as objects 2023-11-26 21:22:43 -05:00
Ian Arawjo
2da8880eb6 Rebuild react and package version 2023-11-26 21:00:51 -05:00
Ian Arawjo
d00788369c Make ordering of LLM responses consistent w vars dict ordering 2023-11-26 20:59:05 -05:00
Ian Arawjo
687c277a22 Convert table values to strings upon export 2023-11-26 20:23:03 -05:00
ianarawjo
1eae5edf89
Add "Continue w prior LLMs" toggle to the base Prompt Node (#168)
* Add support for "continue w prior LLM" toggle on base Prompt Node

* Fix anthropic chat bug

* Detect immediate prompt chaining, and show cont LLM toggle in that case

* Update react build and package
2023-11-19 18:49:52 -05:00
ianarawjo
f7be853554
Add a Split Node (#167)
* Add a split node

* Repair damage to model settings schema

* cleanup

* Fix bug w warning msg in Split node

* Bug fix removing LLM meta key

* Rebuild react and package

* Add markdown parser package dependency
2023-11-19 10:59:37 -05:00
Ian Arawjo
5319f8b5a1 Lock OpenAI package to 3.3.0 2023-11-17 08:56:18 -05:00
Ian Arawjo
4ba0a9f998 Fix bug with new OpenAI models 2023-11-17 08:54:17 -05:00
ianarawjo
0b32792d07
Add newest GPT-4 models (#153) 2023-11-15 13:51:36 -05:00
Ian Arawjo
c5088527bb Remove custom provider MIME type check 2023-11-12 15:45:25 -05:00
ianarawjo
e456ce6f1c
Right-click to Duplicate (v0.2.6.7) (#150)
* Auto-change shortname upon model settings edit

* Adding context menu to nodes on right-click

* Add BaseNode and subclass all CF nodes with BaseNode component

* Add BaseNode to CSVNode

* Move HF and Aleph up in LLM list.

* Rebuild react
2023-11-08 19:11:01 -05:00
ianarawjo
136fe70458
Merge PRs adding two new default HF models and Zoom add node fix (#148)
* Add more recent hf models (#147)

* support zoom (#146)

* Update package version and rebuild react

---------

Co-authored-by: Victor Muštar <victor.mustar@gmail.com>
Co-authored-by: zhaoolee <zhaoolee@gmail.com>
2023-11-06 08:44:38 -05:00
Ian Arawjo
2be5a0a5e5 Add build/ folder back to git repo 2023-10-23 16:51:54 -04:00
Ian Arawjo
c1ae6e5319 Escape braces in join node output 2023-10-23 16:43:21 -04:00
Ian Arawjo
087ee7578d Rebuild react and update package version 2023-10-23 15:08:11 -04:00
Ian Arawjo
f20ff5534c revert tf width 2023-10-23 14:58:36 -04:00
Ian Arawjo
978214c697 minor tweaks join node 2023-10-23 14:54:54 -04:00
Ian Arawjo
469cfd1604 Add numbered list item 2023-10-22 10:51:14 -04:00
Ian Arawjo
30a099bf20 Reorganize join node logic 2023-10-19 12:37:50 -04:00
Ian Arawjo
9c7b36fa7e Bug fix chat histories with undefined content in messages 2023-10-18 14:30:44 -04:00
Ian Arawjo
061f467e82 more wip 2023-10-16 21:59:31 -04:00
Ian Arawjo
6675189424 edge cases 2023-10-16 14:29:05 -04:00
Ian Arawjo
095d77a71b join node wip 2023-10-16 11:54:51 -04:00
Ian Arawjo
d8e734d778 wip join node UI 2023-10-13 13:13:51 -04:00
ianarawjo
beeffd0ebb
Better edges, ReactFlow v11, AlephAlpha integration, better .gitignores (#139)
* 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>
2023-09-25 09:44:18 -04:00
Ian Arawjo
12efba247c Bug fix empty responses from GPT3.5 2023-09-03 18:12:00 -04:00
ianarawjo
0134dbf59b
Custom providers (#122)
* 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
2023-08-27 15:11:42 -04:00
ianarawjo
f43861f075
Add Simple Eval Node. Other minor UI improvements. (#121)
* 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
2023-08-19 16:50:11 -04:00
Ian Arawjo
ce897b55f2 Add Edge and Brave support 2023-08-03 02:25:27 -04:00
Ian Arawjo
3fbc88abb8 Make special #vars work on chat nodes 2023-08-01 14:56:19 -04:00
Ian Arawjo
4730009a1c Add # special fill variables to prompt templating. 2023-08-01 11:34:51 -04:00
ianarawjo
f7fab1d76d
Update 0.2.5: Add Chat Turns, LLM Scorers (#109)
* 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
2023-07-26 12:06:09 -04:00
ianarawjo
a27d092ccc
Choose plot column in table view of response inspector (#106)
* 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
2023-07-23 14:22:13 -04:00
Ian Arawjo
16258e5588 Force height of wide handles 2023-07-21 12:47:21 -04:00
ianarawjo
666d5900b5
'Dirty' downstream nodes whenever upstream changes are made. Minor styling improvements. (#105)
* 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
2023-07-21 12:39:08 -04:00
Ian Arawjo
69f52e7df9 Fix getUniqueLLMMetavarKey bug + remove unnecessary deps 2023-07-20 15:40:15 -04:00
Ian Arawjo
5826c822ee Rebuild react and update package version 2023-07-20 11:23:52 -04:00
Ian Arawjo
07150fc6ae Let users choose hostname and port 2023-07-20 11:17:58 -04:00
Ian Arawjo
31340bedc5 Add 0.0.0.0 to localhost hostnames check 2023-07-20 10:30:20 -04:00
ianarawjo
038832910f
Table view and persistent response inspector (#103)
* WIP Tabular data view in Inspect modal

* Keep response inspector mounted

* Rebuild react app and update package version
2023-07-19 17:15:19 -04:00
Ian Arawjo
973970b8ab Escape braces in outputs of prompt nodes by default 2023-07-14 09:13:24 -04:00
ianarawjo
3657609c32
Add prompt preview tooltip, add ability to disable textfields selectively, bug fixes (#97)
* 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.
2023-07-12 17:12:16 -04:00
ianarawjo
318f81e1df
Add prompts previews on hover and click of PromptNode (#91)
* Added Prompt Preview panes

* Update package version and react app
2023-07-07 20:35:50 -04:00
Ian Arawjo
e62be7eaf1 Rebuild react app, update package version 2023-07-07 15:36:26 -04:00
ianarawjo
f094fc937b
Collapseable response supergroups; nicer colors for headers of response groups; resizeable Prompt Node text areas (#89)
* Resizeable textfield in prompt nodes

* Popup when user clicks X to delete node

* Collapseable supergroups in response inspector

* Nicer hierarchical color scheme for response group headers in response inspectors
2023-07-07 15:30:56 -04:00
Ian Arawjo
9cf9673b27 Add allow_empty_str prop so react-json-form-schema treats empty text area as empty string, not undefined 2023-07-07 14:57:13 -04:00
Ian Arawjo
c735008d88 Fix overflow issue in root prompt box in response inspector 2023-07-07 14:56:01 -04:00
Ian Arawjo
e57cfebfc2 Fix duplicate handles bug in Prompt Node 2023-07-07 14:01:04 -04:00
Ian Arawjo
6ad88f0ad9 Update package and rebuild react 2023-07-07 11:39:20 -04:00
Ian Arawjo
9d8dfdb43f Change manifest description 2023-07-07 10:49:49 -04:00