import React from 'react'; import { useRecoilValue, useSetRecoilState } from 'recoil'; import useDocumentTitle from '~/hooks/useDocumentTitle'; import SunIcon from '../svg/SunIcon'; import LightningIcon from '../svg/LightningIcon'; import CautionIcon from '../svg/CautionIcon'; import store from '~/store'; import { useGetStartupConfig } from '~/data-provider'; export default function Landing() { const { data: config } = useGetStartupConfig(); const setText = useSetRecoilState(store.text); const conversation = useRecoilValue(store.conversation); // @ts-ignore TODO: Fix anti-pattern - requires refactoring conversation store const { title = 'New Chat' } = conversation || {}; useDocumentTitle(title); const clickHandler = (e: React.MouseEvent) => { e.preventDefault(); const { innerText } = e.target as HTMLButtonElement; const quote = innerText.split('"')[1].trim(); setText(quote); }; return (

{config?.appTitle || 'LibreChat'}

Examples

Capabilities

  • Remembers what user said earlier in the conversation
  • Allows user to provide follow-up corrections
  • Trained to decline inappropriate requests

Limitations

  • May occasionally generate incorrect information
  • May occasionally produce harmful instructions or biased content
  • Limited knowledge of world and events after 2021
{/* {!showingTemplates && (
)} {!!showingTemplates && } */} {/*
*/}
); }