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

Update the error message and automatically download a dataset when a part of a recipe is not found #208

Merged
merged 49 commits into from
Jan 16, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
c60e26e
Automatically download the dataset of a recipe if it's not already in…
sanjaycal Jan 10, 2025
5f7ab22
Updated the error messages to better match what was going on, with th…
sanjaycal Jan 10, 2025
85313d8
Updated the error messages to better match what was going on, with th…
sanjaycal Jan 10, 2025
ce8c49c
Merge branch 'sanjay-fix-recipes-that-need-downloading' of https://gi…
sanjaycal Jan 13, 2025
1de0216
change default api port to 8338
aliasaria Jan 13, 2025
8a20bb5
remove transparency from the main app window -- can't get it to work …
aliasaria Jan 13, 2025
e65131b
Make importing models work, still need to add the downloading popup
sanjaycal Jan 13, 2025
b2752af
Remove old comments from DownloadProgressBox
dadmobile Jan 13, 2025
af502c8
Rename parameter in DownloadProgressBox to not be model specific.
dadmobile Jan 13, 2025
d4fa2af
Make the currently downloading model show up on the Train page with D…
sanjaycal Jan 13, 2025
22470f1
fixes #61
aliasaria Jan 13, 2025
93b2306
Hide GPU memory if you are on an apple machine with MLX
aliasaria Jan 13, 2025
ca556f8
fade mlx logo a bit to reduce harshness
aliasaria Jan 13, 2025
ba5c5d2
expand python libraries section of computer tab
aliasaria Jan 13, 2025
d085c3b
split computer page into tabs
aliasaria Jan 13, 2025
c074f53
Fixed the download progress bar to import clamp, which is needed for …
sanjaycal Jan 13, 2025
a0ecaa1
Fixed the training download view so that it actually updates
sanjaycal Jan 13, 2025
6a1af06
show nvidia logo if you have it
aliasaria Jan 13, 2025
a5c9438
Fix variable name that wasn't updated on DownloadProgressBar.
dadmobile Jan 13, 2025
b9519c3
new logo
aliasaria Jan 14, 2025
3b0521b
hide the progress box if the info is loading
sanjaycal Jan 14, 2025
fe5c067
Fixed the training status text when a failure occurs from success to …
sanjaycal Jan 14, 2025
de708ea
Merge pull request #210 from transformerlab/fix-training-status-text
sanjaycal Jan 14, 2025
6395f67
hide the progress box if the info is loading
sanjaycal Jan 14, 2025
ce1162a
Merge branch 'sanjay-fix-recipes-that-need-downloading' of https://gi…
sanjaycal Jan 14, 2025
38dd9f6
checking in a temporary log viewer -- this is hardcoded to only work …
aliasaria Jan 15, 2025
b0c978d
improve look of xterm at bottom of screen
aliasaria Jan 15, 2025
c26fe79
remove hardcoded URL in log viewer
aliasaria Jan 15, 2025
dfff775
improve global log panel on resize
aliasaria Jan 15, 2025
2e876c3
resize log window using chevron
aliasaria Jan 15, 2025
43c442c
tweaks to size
aliasaria Jan 15, 2025
fa04640
fit terminal to window better
aliasaria Jan 15, 2025
daf30d5
hide terminal completely on collapse
aliasaria Jan 15, 2025
8f3c6ef
allow any logendpoint
aliasaria Jan 15, 2025
b2367a7
Streamthe output of trainers
aliasaria Jan 15, 2025
daf3f71
fix color
aliasaria Jan 16, 2025
6eab2cf
fix
aliasaria Jan 16, 2025
663c209
allow the output terminal to display an initial message
aliasaria Jan 16, 2025
bf1b90b
remove unused imports
aliasaria Jan 16, 2025
89a6aa4
add a counter to the login screen to show elapsed seconds
aliasaria Jan 16, 2025
331b915
display an alertbox that shows up if the install is taking too long
aliasaria Jan 16, 2025
1029bbd
Updated the error messages to better match what was going on, with th…
sanjaycal Jan 10, 2025
98d05b1
Make importing models work, still need to add the downloading popup
sanjaycal Jan 13, 2025
7c1ab09
Make the currently downloading model show up on the Train page with D…
sanjaycal Jan 13, 2025
9a0916c
Fixed the download progress bar to import clamp, which is needed for …
sanjaycal Jan 13, 2025
3872aff
Fixed the training download view so that it actually updates
sanjaycal Jan 13, 2025
8239e99
hide the progress box if the info is loading
sanjaycal Jan 14, 2025
c8400b0
Merge branch 'sanjay-fix-recipes-that-need-downloading' of https://gi…
sanjaycal Jan 16, 2025
ee0e255
Switch from alert to confirm to allow the user to not download
sanjaycal Jan 16, 2025
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
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
<br />
<div align="center">
<a href="/~https://github.com/transformerlab/transformerlab-app">
<img src="https://transformerlab.ai/img/flask.svg" alt="Logo" width="80" height="80">
<img src="https://transformerlab.ai/img/logo2.svg" alt="Logo" width="80" height="80">
</a>

<h1 align="center" style="color: rgb(68, 73, 80); letter-spacing: -1px">Transformer Lab</h1>
<h1 align="center" style="color: rgb(16, 16, 18); letter-spacing: -1px">Transformer Lab</h1>

<p align="center">
Download, interact, and finetune models locally.
Expand Down
36 changes: 29 additions & 7 deletions src/main/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -200,18 +200,40 @@ const startListeningToServerLog = async () => {
});
};

ipcMain.handle('dark-mode:toggle', () => {
if (nativeTheme.shouldUseDarkColors) {
nativeTheme.themeSource = 'light';
} else {
nativeTheme.themeSource = 'dark';
}
return nativeTheme.shouldUseDarkColors;
/***********************
* DARK MODE stuff
***********************/
// Listn to nativeTheme update change from the OS:
nativeTheme.on('updated', () => {
console.log('nativeTheme updated', nativeTheme.shouldUseDarkColors);
mainWindow?.webContents.send(
'dark-mode:updated',
nativeTheme.shouldUseDarkColors
);
});

// ipcMain.handle('dark-mode:toggle', () => {
// console.log('dark-mode:toggle');
// console.log(nativeTheme);
// if (nativeTheme.shouldUseDarkColors) {
// nativeTheme.themeSource = 'light';
// } else {
// nativeTheme.themeSource = 'dark';
// }
// return nativeTheme.shouldUseDarkColors;
// });

// ipcMain.handle('dark-mode:set', (_event, shouldUseDarkColors) => {
// console.log('dark-mode:set', shouldUseDarkColors);
// nativeTheme.themeSource = shouldUseDarkColors ? 'dark' : 'light';
// });

ipcMain.handle('dark-mode:system', () => {
nativeTheme.themeSource = 'system';
});
/***********************
* DARK MODE stuff END
***********************/

startListeningToServerLog();

Expand Down
3 changes: 3 additions & 0 deletions src/main/preload.ts
Original file line number Diff line number Diff line change
Expand Up @@ -103,4 +103,7 @@ contextBridge.exposeInMainWorld('autoUpdater', {
contextBridge.exposeInMainWorld('darkMode', {
toggle: () => ipcRenderer.invoke('dark-mode:toggle'),
system: () => ipcRenderer.invoke('dark-mode:system'),
setMode: (value) => ipcRenderer.invoke('dark-mode:set', value),
onUpdate: (callback) =>
ipcRenderer.on('dark-mode:updated', (_event, value) => callback(value)),
});
60 changes: 49 additions & 11 deletions src/renderer/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,15 @@ import * as chatAPI from 'renderer/lib/transformerlab-api-sdk';

import useSWR from 'swr';
import XtermJSDrawer from './components/Connect/XtermJS';
import OutputTerminal from './components/OutputTerminal';
import {
ChevronDown,
ChevronDownIcon,
ChevronUpIcon,
Icon,
} from 'lucide-react';
import { IconButton } from '@mui/joy';
import { log } from 'node:console';
// import OutputTerminal from './components/OutputTerminal';
// import AutoUpdateModal from './components/AutoUpdateModal';

Expand All @@ -27,7 +36,7 @@ export default function App() {

const [sshConnection, setSSHConnection] = useState(null);

const [drawerOpen, setDrawerOpen] = useState(false);
const [logsDrawerOpen, setLogsDrawerOpen] = useState(false);

useEffect(() => {
async function getSavedExperimentId() {
Expand Down Expand Up @@ -84,13 +93,12 @@ export default function App() {
width: '100dvw',
overflow: 'hidden',
gridTemplateColumns: '220px 1fr',
gridTemplateRows: '60px 5fr 0fr',
gridTemplateRows: logsDrawerOpen ? '60px 5fr 308px' : '60px 5fr 18px',
gridTemplateAreas: `
"sidebar header"
"sidebar main"
"sidebar footer"
`,

// backgroundColor: (theme) => theme.vars.palette.background.surface,
})}
>
Expand All @@ -105,7 +113,8 @@ export default function App() {
<Sidebar
experimentInfo={experimentInfo}
setExperimentId={setExperimentId}
setDrawerOpen={setDrawerOpen}
logsDrawerOpen={logsDrawerOpen}
setLogsDrawerOpen={setLogsDrawerOpen}
/>
<Box
sx={{
Expand All @@ -130,19 +139,48 @@ export default function App() {
experimentInfoMutate={experimentInfoMutate}
/>
</Box>
{/* <OutputTerminal /> */}
<Box
sx={{
gridArea: 'footer',
display: 'flex',
flexDirection: 'column',
height: logsDrawerOpen ? '100%' : '18px',
width: '100%',
overflow: 'hidden',
alignItems: 'flex-end',
backgroundColor: 'var(--joy-palette-background-level3)',
}}
>
<IconButton
sx={{ padding: 0, margin: 0, minHeight: 0 }}
onClick={() => setLogsDrawerOpen(!logsDrawerOpen)}
>
{logsDrawerOpen ? (
<ChevronDownIcon size="18px" />
) : (
<ChevronUpIcon size="18px" />
)}
</IconButton>
<Box
sx={{
height: logsDrawerOpen ? '100%' : '0px',
overflow: 'hidden',
border: logsDrawerOpen ? '10px solid #444' : '0',
padding: logsDrawerOpen ? '6px' : '0',
backgroundColor: '#000',
width: '100%',
}}
>
<OutputTerminal initialMessage="** Running a Model will Display Output Here **" />
</Box>
</Box>
<LoginModal
setServer={setConnection}
connection={connection}
setTerminalDrawerOpen={setDrawerOpen}
setTerminalDrawerOpen={setLogsDrawerOpen}
setSSHConnection={setSSHConnection}
/>
</Box>
<XtermJSDrawer
sshConnection={sshConnection}
drawerOpen={drawerOpen}
setDrawerOpen={setDrawerOpen}
/>
</CssVarsProvider>
);
}
Loading