where python or where python3
#then take the path and replace it in the command below
virtualenv -p {python path} venv --prompt="gen_ai_agents"
source venv/bin/activate
python3 -m pip install -r requirements.txt
## Chainlit
[Sample app](https://github.com/Chainlit/cookbook/blob/main/pyautogen/app.py)
## Database Commands
# Demo Project using Autogen Multi-Conversational Agents and Chainlit
### to start Postgres container run this command
```commandline
docker run -d -p 5432:5432 --name iw25-gen-ai -e POSTGRES_PASSWORD=mysecretpassword postgres
docker start iw25-gen-ai
docker stop iw25-gen-ai
docker exec -it iw25-gen-ai bash
su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'mysecretpassword';"
psql -c 'create database iw25_gen_ai;'
psql
\c iw25_gen_ai
CREATE TABLE transcript_summaries( transcript_id VARCHAR(20), transcript_summary JSONB);
INSERT INTO transcript_summaries (transcript_id, transcript_summary) VALUES ('123456', '{"summary":"The customer called Geek Squad to inquire about a specific type of printer they bought. The customer provided the order number 806185814326. The agent redirected the customer to the right department, but the customer expressed frustration as they had already been on hold for 12 minutes and got disconnected. The agent offered a $20 gift card for the trouble, but the customer declined. The call ended with the customer being put on hold.","orderNumber":"806185814326","productSKU":"","driver":"","photos":false,"agentCall":false,"contactType":"Phone","productSafetyFlag":false,"customerNeed":"Technical support","employeeResponse":"Referred to other team - unable to help","customerSentimentGoingIn":{"sentiment":"Neutral","reasoning":"Customer seemed frustrated and in need of assistance"},"customerSentimentGoingOut":{"sentiment":"Neutral","reasoning":"Customer declined the gift card and was put on hold, still frustrated."},"agentName":"Valerie","customerName":"","giftCards":{"giftCardOffered":true,"giftCardAmount":"$20","giftCardAccepted":false}}');
psql
\c iw25_gen_ai
select * from transcript_summaries;