Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chat with your pipelines functionality #56

Open
wants to merge 149 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 132 commits
Commits
Show all changes
149 commits
Select commit Hold shift + click to select a range
bb52c88
feat(secrets): add commands to register, update, and remove OpenAI AP…
sklarfox Aug 21, 2024
5fc0003
feat(secrets): add function to retrieve secrets from VSCode
sklarfox Aug 21, 2024
a0de734
feat: remove unnecessary deleteOpenAIKey function
sklarfox Aug 22, 2024
6824174
feat: generalize LLM API Key registry command, support for Anthropic,…
sklarfox Aug 23, 2024
e1a363f
chore: remove todo comments
sklarfox Aug 23, 2024
c193356
chore: address coderabbitai suggestions
sklarfox Aug 23, 2024
e7f62ef
feat: added panel to extension
wyennie Aug 20, 2024
32bdbd3
feat: added chat to side-bar.
wyennie Aug 21, 2024
8504461
feat(chat): integrated Gemini API using TokenJS for chat response
wyennie Aug 22, 2024
124ed24
feat: added context for serverDataProvider messages
alan-cho Aug 22, 2024
c0c8d93
feat: added chat history and stack component data/environment data/pi…
Nathaniel-Xu Aug 23, 2024
42c9feb
fix: Removed langchain and used tokenjs, removed message history
Nathaniel-Xu Aug 23, 2024
8ede3cb
feat: added additional functions for gathering context
alan-cho Aug 23, 2024
34bbddb
feat: added message history to chatbot
alan-cho Aug 23, 2024
9ffc4fa
fix: limits the amount remembered
alan-cho Aug 26, 2024
c25fa8e
feat: added markdown renderer using markedjs
Nathaniel-Xu Aug 24, 2024
b2e490e
refactor(ChatViewProvider): seperate out HTML into a new file and ref…
wyennie Aug 25, 2024
76dbef8
feat: updated chat styling for better readability and user experience
wyennie Aug 25, 2024
7f640eb
feat: added Enter key support for sending messasges in chat input
wyennie Aug 25, 2024
5013298
feat: add markdown support to chat messages
wyennie Aug 25, 2024
9e7e3b3
faat(chat): rename ChatViewProvider to ChatDataProvider and restructu…
wyennie Aug 26, 2024
950d715
feat: added panel data connection
Nathaniel-Xu Aug 26, 2024
72ca4ce
chore: removed unnecessary function
Nathaniel-Xu Aug 26, 2024
9d3c322
feat: Buttons are added to the UI to select context
alan-cho Aug 27, 2024
98b8855
feat: get global config for api token
Nathaniel-Xu Aug 27, 2024
a65bc0d
feat: got log data for some pipeline runs from the dashboard api
Nathaniel-Xu Aug 27, 2024
386d3fc
feat: Added specific pipeline runs to chatbot UI
alan-cho Aug 27, 2024
bffa8ee
style(chatService): format code and fix TypeScript linting issues
wyennie Aug 27, 2024
3765d38
Merge remote-tracking branch 'sklar-fork/feature/secrets' into featur…
wyennie Aug 27, 2024
9c6acd6
merge: Resolve conflicts between pipeline logs and pipeline context
alan-cho Aug 27, 2024
dd734fd
Merge remote-tracking branch 'origin/feature/chatbot' into feature/ch…
wyennie Aug 27, 2024
61e9ba6
fix: Restore missing function
alan-cho Aug 27, 2024
ef89d6b
feat: added get pipline run logs
Nathaniel-Xu Aug 28, 2024
b696f9c
feat(secrets): implement API key management commands and integrate wi…
wyennie Aug 28, 2024
b6dc649
feat: created dropdown menu
Nathaniel-Xu Aug 28, 2024
eb9fb4e
refactor: eliminated redundant storage and created chatMessage type
Nathaniel-Xu Aug 28, 2024
115988a
feat: added context selector ui
Nathaniel-Xu Aug 29, 2024
8f0a4fe
refactor: change api key naming convention to `zenml.{provider}.key`
sklarfox Aug 29, 2024
dcf67ce
feat: added renderChat command to render chat in the editor area
wyennie Aug 29, 2024
a007200
Merge remote-tracking branch 'origin/feature/chatbot' into feature/ch…
wyennie Aug 29, 2024
52ef717
fix: fixed markdown parsing of chat messages
wyennie Aug 29, 2024
be3bb3a
chore: remove unecessary commands and views from package.json
wyennie Aug 29, 2024
f109655
feat: changed sidebar webview to an API registration panel
Nathaniel-Xu Aug 30, 2024
7ca398b
feat: overhauled chat interface ui to be more suited to the editor wi…
Nathaniel-Xu Aug 30, 2024
367b9a0
feat: add openChat command to menu
Nathaniel-Xu Aug 30, 2024
7a2b6ea
feat: overhauled ui again to be more minamalistic
Nathaniel-Xu Aug 30, 2024
1a8e34a
chore: update code structure and formatting
wyennie Aug 30, 2024
715167e
feat: connected context to selector for server/stack/components/envir…
Nathaniel-Xu Aug 31, 2024
64e236c
fix: fixed environment context only being retrieved when tree view is…
Nathaniel-Xu Aug 31, 2024
d7e5e7a
feat: added all pipeline runs and metadata as individual tree items i…
Nathaniel-Xu Aug 31, 2024
8f4facf
feat: hooked up individual pipeline runs metadata, logs, and panel data
Nathaniel-Xu Sep 1, 2024
f0b9f4b
feat: added sample questions ui
Nathaniel-Xu Sep 1, 2024
ba17414
Merge pull request #31 from sklarfox/feature/openai-api-key
strickvl Sep 2, 2024
9b2bb19
Merge branch 'ls-genai-cohort' into feature/chatbot
wyennie Sep 3, 2024
89cc5d1
chore: clean up after merge
wyennie Sep 3, 2024
8fbb1e8
style: rework styling to use VS Code theme
wyennie Sep 4, 2024
95c3488
feat(api, chat): integrate API secrets registration and restructure c…
wyennie Sep 4, 2024
df46ea6
feat: Added clearchat button to clear the chat logs
alan-cho Sep 4, 2024
5f0532c
chore: changed dropdown direction, removed redundant header, changed …
Nathaniel-Xu Sep 4, 2024
c154d61
feat: overhauled chat bar ui to look like cursor
Nathaniel-Xu Sep 5, 2024
2790557
feat: hooked up model dropdown to backend
Nathaniel-Xu Sep 5, 2024
494b35c
feat: set up streaming text response from AI provider
wyennie Sep 5, 2024
f7514b9
fix: re-added clear chat button and cleaned up 'getChatResponse' method
wyennie Sep 5, 2024
53ba0df
feat/style/fix: added state to localstorage for model/context dropdow…
Nathaniel-Xu Sep 5, 2024
4da1dea
feat: added tooltips for context selector
Nathaniel-Xu Sep 5, 2024
4bd5762
Merge remote-tracking branch 'zenml-io/develop' into feature/chatbot
wyennie Sep 5, 2024
54cd224
feat: reverse message display order in main webview
wyennie Sep 5, 2024
2ce39bc
feat(chat): disable message submission during AI response streaming
wyennie Sep 5, 2024
2e93dac
feat: pipline runs context displays first ten and has an expand butto…
Nathaniel-Xu Sep 5, 2024
8adf61e
feat: Added button functionality for sample questions
alan-cho Sep 6, 2024
52af516
chore: merge branch
alan-cho Sep 6, 2024
623ee0a
feat: Added sample question
alan-cho Sep 6, 2024
536f1bf
refactor(chat): reorganize chat code for better clarity and consistency
wyennie Sep 8, 2024
bccfe21
feat: add formatting directions for model via system role
wyennie Sep 9, 2024
8ddfeda
feat(chat): rearrange webview to resemble ChatGPT layout
wyennie Sep 9, 2024
c93106c
perf: Added priming and additional context for more accurate and fast…
alan-cho Sep 9, 2024
da1fd58
feat(ui): swap positions of Open Chat and Register/Change AI API Key …
wyennie Sep 9, 2024
e66a4fa
feat: Added loader animation
alan-cho Sep 10, 2024
c7a49d4
Merge branch 'feature/chatbot' of https://github.com/wyennie/vscode-z…
alan-cho Sep 10, 2024
47ae1f5
feat(chatMessage): add button to copy message text in ZenML Assistant…
wyennie Sep 10, 2024
859c835
feat(ui): enhance model selection and prompt handling
wyennie Sep 11, 2024
3e063ff
refactor: cleanup and polish chatlog styling
alan-cho Sep 11, 2024
6ae5ec5
refactor: remove improve stack prompt
alan-cho Sep 17, 2024
efc5984
refactor: refine the prompting
alan-cho Sep 17, 2024
d23a9e6
refactor: reloads the webview when zenml client is ready and refactor…
alan-cho Sep 17, 2024
61f1071
feat: Added pagination to context menu
alan-cho Sep 19, 2024
b8ec94c
refactor: move in-line script to JS file and split chatView/utils int…
wyennie Sep 20, 2024
a03e8c6
refactor: fix context menu bug after sending message
alan-cho Sep 23, 2024
6639188
fix: change context message role from 'user' to 'system' to ensure co…
wyennie Sep 23, 2024
84af4b3
refactor: update styling for pipeline context menu
alan-cho Sep 23, 2024
960f88a
Merge branch 'feature/chatbot' of https://github.com/wyennie/vscode-z…
alan-cho Sep 23, 2024
a5c4702
refactor(chat): manage disposables in ChatDataProvider
wyennie Sep 24, 2024
7f72f4b
refactor(chatView): improve type safety and function structure in han…
wyennie Sep 24, 2024
1705337
fix(chatMessageHandler): add error handling and property validation t…
wyennie Sep 24, 2024
186fa18
refactor(secrets): move LLM_PROVIDERS array outside registerLLMAPIKey…
wyennie Sep 24, 2024
57ae8fb
refactor(chat): remove duplicate functions and consolidate event list…
wyennie Sep 24, 2024
8538b2c
refactor(types): improve type safety in TreeItem and WebviewMessage i…
wyennie Sep 24, 2024
f0aad97
fix: Correct context type for resolveWebviewView in openChat
wyennie Sep 24, 2024
9d9750a
refactor(docs): Improve WebviewMessage interface and add documentation
wyennie Sep 24, 2024
c362c38
refactor: Enhance error handling in sendMessage handler
wyennie Sep 24, 2024
4dfc9d4
refactor: Organize custom error classes and enhance error handling
wyennie Sep 24, 2024
c60248d
refactor: Enhance consistency and error handling in chat handlers
wyennie Sep 24, 2024
b6a403b
refactor: Use dependency injection for PipelineDataProvider
wyennie Sep 24, 2024
ace8bc3
refactor: Optimize and enhance error handling and type safety in Pipe…
wyennie Sep 24, 2024
ae3fabd
chore: Remove chat.css file in favor of inline styling
wyennie Sep 24, 2024
03fef9b
fix: Enhance error handling and type safety in getChatResponse
wyennie Sep 24, 2024
ae5636e
refactor: Ensure consistent naming for button IDs and message commands
wyennie Sep 24, 2024
e58f7e0
fix: Properly type the renderer and remove @ts-ignore in renderChatLog
wyennie Sep 24, 2024
39bcbab
fix: remove duplicate isInputDisabled, replace SubmitEvent, and send …
wyennie Sep 25, 2024
ed8930e
refactor: Encapsulate pipelineRuns property and add getter method
wyennie Sep 26, 2024
05f3a63
Add error handling for fs.readFileSync and update pagination button l…
wyennie Sep 26, 2024
491de7d
fix: Ensure proper removal of event listener by storing bound functio…
wyennie Sep 26, 2024
8886671
fix: Initialize currentModel with the first available model for the p…
wyennie Sep 26, 2024
5860d10
fix: Dynamic provider name in error message and remove unnecessary de…
wyennie Sep 26, 2024
d1edeb7
fix: Add checks and error handling in ContextUtils
wyennie Sep 26, 2024
824a42e
fix: Add error handling for JSON parsing in addContext
wyennie Sep 26, 2024
30ffa7a
fix: re-added hideLoader function to stop infinity loading animation.
wyennie Sep 26, 2024
57402d2
security: prevent XSS attacks
alan-cho Sep 26, 2024
7d7a106
Merge branch 'feature/chatbot' of https://github.com/wyennie/vscode-z…
alan-cho Sep 26, 2024
13a0ff5
feat: Replace CDN dependencies with local files for Marked.js and DOM…
wyennie Sep 27, 2024
32dccd3
feat: Integrate Tailwind CSS and remove CDN
wyennie Sep 27, 2024
4acb5e4
fix: Handle dynamic pipeline run context in addContext function
wyennie Sep 27, 2024
b0a065b
refactor: Enhance error handling and type safety in utility functions
wyennie Sep 27, 2024
bdad3ee
refactor: Enhance error handling, type safety, and readability
wyennie Sep 27, 2024
e32fe11
fix: Improve compatibility and prevent scope leakage in chat.js
wyennie Sep 27, 2024
dd89c85
chore: Refactor postcss.config.js for style adherence and maintainabi…
wyennie Sep 27, 2024
9ecc7ba
chore: Enhance build_css function and remove redundant dev function
wyennie Sep 27, 2024
43e6f1e
refactor: Improve accessibility and maintainability of CSS
wyennie Sep 27, 2024
b546d3f
chore(noxfile): add TailwindCSS build step to setup session
wyennie Sep 30, 2024
0a895b9
update supported models and display error to user
alan-cho Nov 1, 2024
84ca500
change default llm to open ai and made frontend and backend state mor…
alan-cho Nov 1, 2024
091eefa
update files to follow lint style
alan-cho Nov 1, 2024
6fff649
docs: added documentation for custom errors related to the chatbot an…
alan-cho Nov 5, 2024
f031984
chore: refactor custom chattype aimodel
alan-cho Nov 5, 2024
df35edf
refactor: changed the type of role in chatmessage to the only three p…
alan-cho Nov 5, 2024
012ce96
refactor: layout uses flexible css rather than fixed height
alan-cho Nov 5, 2024
21e7c8f
refactor: refactor error handling in tokenutils
alan-cho Nov 5, 2024
bbac8d5
refactor: make prompting more consistent
alan-cho Nov 5, 2024
f892661
refactor: avoids side effects inside getPipelineData
alan-cho Nov 5, 2024
e954b89
refactor: add error handling for getTreeData
alan-cho Nov 5, 2024
da4ef35
refactor: correct typo in context items in pipelineutils
alan-cho Nov 5, 2024
391fae1
refactor: better error handling in chatdataprovider
alan-cho Nov 5, 2024
c7bf7a0
refactor: return default html when error reading html
alan-cho Nov 5, 2024
205a648
refactor: add error handling for lsclient
alan-cho Nov 5, 2024
7d91ad3
refactor: better prompting when there is no selected context
alan-cho Nov 5, 2024
af93a3f
feat: added checkbox behavior for children checkboxes
alan-cho Nov 6, 2024
236e93c
refactor: cleanup event handlers and make checkbox behavior persist t…
alan-cho Nov 7, 2024
15c11ae
feat: render chat stream more continuously
alan-cho Nov 15, 2024
d19c199
chore: handled edge cases in rendering chat
alan-cho Nov 15, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .python-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
zenml-env-3.10.0
23 changes: 23 additions & 0 deletions noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,8 @@ def setup(session: nox.Session) -> None:
_setup_template_environment(session)
print(f"DEBUG – Virtual Environment Interpreter: {session.bin}/python")

build_css(session)


@nox.session()
def tests(session: nox.Session) -> None:
Expand Down Expand Up @@ -177,3 +179,24 @@ def update_packages(session: nox.Session) -> None:
session.install("wheel", "pip-tools")
_update_pip_packages(session)
_update_npm_packages(session)

@nox.session
def build_css(session, watch=False):
try:
session.log("Installing tailwindcss...")
session.install('tailwindcss')

session.log("Processing CSS...")
cmd = [
'npx', 'tailwindcss',
'-i', './resources/chat-view/styles.css',
'-o', './dist/styles.css'
]
if watch:
cmd.append('--watch')

session.run(*cmd, external=True)
session.log("CSS processing completed successfully.")
except Exception as e:
session.log(f"An error occurred during CSS processing: {str(e)}")
raise
Loading
Loading