Ideas to be possibly implemented in the future:
+** Documentation
+
+- Add example problem statements and resulting solutions on various
+ domains. Accompany them with precise usage procedure:
+ - What user did, when, where and how.
+ - How and where did result appear.
+
** System operation
+
- Implement CPU nice priority for inference processes to minimize the
impact on system responsiveness during heavy computations.
- Enable model selection per individual inference task, allowing for
dynamic adjustment based on task requirements.
- Allow specification of custom prompts for each inference task to
tailor interactions precisely.
-- Introduce an aliasing system for frequently used prompts,
- streamlining the prompt selection process.
- Consider implementing a plugin architecture to allow third-party
developers to extend Älyverkko CLI's functionality with custom
modules or integrations.
- Possibility to easily pause and resume Älyverkko CLI without loosing
in-progress computation. Unix process stop and continue signals
could possibly be used.
+- Add support for speculative decoding to speed up inference.
+
** Data management
+
- Develop a feature to recursively aggregate files into a single
document using Emacs org-mode syntax, facilitating the preparation
of comprehensive problem statements for AI processing.
process to maintain text readability and compatibility.
** Configuration and logging
+
- Implement a fallback mechanism to use a system-wide configuration
file located in `/etc/` if no user-specific configuration is found,
enhancing out-of-the-box usability for new users.
and performance monitoring without cluttering the standard output.
** Integration with external services
+
- Add capabilities to connect with Jira, fetch content, and
potentially update issues or comments based on AI processing
results.
automation of web-based tasks.
** Tooling enhancements
+
- Incorporate Python script execution capabilities directly by the AI,
expanding the range of available data manipulation and processing
tools.
reference its own notes, fostering context retention across tasks.
** Multimedia processing
+
- Extend the application's capabilities to include voice capture and
processing, opening up new avenues for interaction beyond text-based
communication.
involve image analysis or content extraction from visual data.
** Task queue management
+
- Refactor the task queue mechanism to support:
- Multiple task sources, including a REST API endpoint for
programmatic task submission.
processed in a timely manner.
** User interface development
+
- Create a web-based UI to provide users with an interface for task
submission and result retrieval, improving accessibility and user
experience.
APPLICATIONS_DIR="/usr/share/applications"
SYSTEM_SERVICE_DIR="/etc/systemd/system"
CONFIG_DIR="${HOME}/.config/"
-
-# Ask user if they want to install systemd service
-echo "Do you want to install Älyverkko CLI as a systemd service? (y/N)"
-read install_service
+SYSTEM_SERVICE="alyverkko-cli.service"
# Build the application
mvn --settings maven.xml clean package
sudo cp alyverkko-cli.yaml "$CONFIG_DIR"
fi
-# Install systemd service if requested
-if [[ $install_service == [Yy] ]]; then
+# Check if systemd service already exists
+if [ -f "$SYSTEM_SERVICE_DIR/$SYSTEM_SERVICE" ]; then
+ echo "Systemd service is already installed."
+ # Display the status without hanging
+ echo "Service status is:"
+ systemctl --no-pager -l status alyverkko-cli
+else
+ # Install systemd service if requested
+ echo "Do you want to install Älyverkko CLI as a systemd service? (y/N)"
+ read install_service
-cat <<EOF | sudo tee "$SYSTEM_SERVICE_DIR/alyverkko-cli.service" > /dev/null
+ if [[ $install_service == [Yy] ]]; then
+ cat <<EOF | sudo tee "$SYSTEM_SERVICE_DIR/$SYSTEM_SERVICE" > /dev/null
[Unit]
Description=Älyverkko CLI daemon in mail mode
After=network.target
[Install]
WantedBy=multi-user.target
EOF
- sudo systemctl daemon-reload
- sudo systemctl enable alyverkko-cli
- sudo systemctl start alyverkko-cli
- echo "Systemd service installed, enabled and started. Service status is:"
- systemctl -l status alyverkko-cli
+ sudo systemctl daemon-reload
+ sudo systemctl enable alyverkko-cli
+ sudo systemctl start alyverkko-cli
+ echo "Systemd service installed, enabled and started. Service status is:"
+ systemctl --no-pager -l status alyverkko-cli
+ fi
fi
echo "Installation complete."