This repository is for deploying the light version of Morus-bassanus, a platform designed to provide instant support and facilitate informed decision-making for humanitarians. The system integrates with various humanitarian sources and leverages advanced AI to enhance crisis response and resource management.
- Real-Time Crisis Updates: Integrated with sources like ReliefWeb to provide real-time updates on ongoing crises, including new developments and key statistics.
- Historical Data: Access to historical data on past crises to provide context and aid in trend analysis.
- API Integrations: Connects with multiple humanitarian data sources, including ReliefWeb, UN OCHA, and local NGOs, to aggregate and provide a comprehensive view.
- Data Aggregation: Aggregates data from different sources for a unified user interface.
- Data Visualization: Interactive maps, charts, and dashboards to visualize crisis data and trends.
- Predictive Analytics: Uses AI and machine learning to predict future trends and needs based on historical data.
- Chat Interface: Enhanced ChatGPT integration with context-aware assistance, multilingual support, and interactive Q&A.
- Collaboration Tools: Includes shared notes, task management, and real-time updates for team collaboration.
- User Profiles: Allows users to create and manage profiles with preferences and previous interactions.
- Custom Alerts: Enables users to set up custom alerts and notifications for specific crises or updates.
- Automated Reporting: Generates reports on crisis situations, resource usage, and response effectiveness.
- Documentation Management: Tools for documenting actions, decisions, and lessons learned.
- Data Protection: Ensures secure storage and transmission of data, adhering to relevant privacy regulations.
- Access Controls: Implements role-based access controls to restrict sensitive information to authorized users.
- Offline Capabilities: Provides offline access to critical information in areas with limited connectivity.
- Feedback Mechanisms: Features for users to provide feedback on the system and its features.
- Continuous Improvement: Regular updates based on user feedback and evolving needs.
- Clone the Repository
git clone git clone https://github.com/parsimeikoikai/Morus-bassanus.git
- In this project we are using python3.11 and poetry as our env manager.
- First, install poetry from this installation guide.
- To add any package run
poetry add package
.
1- Prepare .env file with same info as .env.sample file
2- Use the docker compose file to build and run the services.
docker compose up --build
3- Visit http://0.0.0.0:9000/docs to see the Swager UI of the appliation.
-
/
- Display an introductory message
-
/ask
-
Takes a query and returns an answer and the sources used to answer the query.
-
Input:
{"query": "the user query"}
-
Output:
{"answer": "The LLM answer", "sources": "The sources used to answer (article titles)"}
-
-
/retrieve
-
Takes a query and returns the sources similar to thihs query.
-
Input:
{"query": "the user query"}
-
Output:
{["page_content": "Text content", "meta": "Document meta such as source"]}
-
-
backend
:- The server service backed by FastAPI.
-
scripts
:- Scripts used to download the data from S3 and vectorize it and embed it to the DB.
-
weaviate
:- The vectorized DB service, backed by Weaviate client and OpenAI embedding service.
- dockers:
- Contains the docker files for used services.
- scripts:
- Contains the initial scripts that used before running the service.
- src:
- Contains the code for the backend API and the DB modules, and LLM logic.
Both should be installed and make sure mongodb is running.
git clone https://github.com/parsimeikoikai/Morus-bassanus.git
cd Morus-bassanus
Now rename env files from .env.example to .env
cd public
mv .env.example .env
cd ..
cd server
mv .env.example .env
cd ..
Now install the dependencies
cd server
yarn
cd ..
cd public
yarn
We are almost done, Now just start the development server.
For Frontend.
cd client
yarn start
For Backend.
Open another terminal in folder, Also make sure mongodb is running in background.
cd server
yarn start
Done! Now open localhost:3000 in your browser.