mirror of
https://github.com/mudler/LocalAI.git
synced 2024-12-28 08:28:51 +00:00
1ed6b96dd7
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
63 lines
2.0 KiB
YAML
63 lines
2.0 KiB
YAML
name: Release notifications
|
|
on:
|
|
release:
|
|
types:
|
|
- published
|
|
|
|
jobs:
|
|
notify-discord:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
RELEASE_BODY: ${{ github.event.release.body }}
|
|
RELEASE_TITLE: ${{ github.event.release.name }}
|
|
RELEASE_TAG_NAME: ${{ github.event.release.tag_name }}
|
|
steps:
|
|
- uses: mudler/localai-github-action@v1
|
|
with:
|
|
model: 'hermes-2-theta-llama-3-8b' # Any from models.localai.io, or from huggingface.com with: "huggingface://<repository>/file"
|
|
- name: Summarize
|
|
id: summarize
|
|
run: |
|
|
input="$RELEASE_TITLE\b$RELEASE_BODY"
|
|
|
|
# Define the LocalAI API endpoint
|
|
API_URL="http://localhost:8080/chat/completions"
|
|
|
|
# Create a JSON payload using jq to handle special characters
|
|
json_payload=$(jq -n --arg input "$input" '{
|
|
model: "'$MODEL_NAME'",
|
|
messages: [
|
|
{
|
|
role: "system",
|
|
content: "Write a discord message with a bullet point summary of the release notes."
|
|
},
|
|
{
|
|
role: "user",
|
|
content: $input
|
|
}
|
|
]
|
|
}')
|
|
|
|
# Send the request to LocalAI API
|
|
response=$(curl -s -X POST $API_URL \
|
|
-H "Content-Type: application/json" \
|
|
-d "$json_payload")
|
|
|
|
# Extract the summary from the response
|
|
summary=$(echo $response | jq -r '.choices[0].message.content')
|
|
|
|
# Print the summary
|
|
# -H "Authorization: Bearer $API_KEY" \
|
|
{
|
|
echo 'message<<EOF'
|
|
echo "$summary"
|
|
echo EOF
|
|
} >> "$GITHUB_OUTPUT"
|
|
- name: Discord notification
|
|
env:
|
|
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK_URL_RELEASE }}
|
|
DISCORD_USERNAME: "LocalAI-Bot"
|
|
DISCORD_AVATAR: "https://avatars.githubusercontent.com/u/139863280?v=4"
|
|
uses: Ilshidur/action-discord@master
|
|
with:
|
|
args: ${{ steps.summarize.outputs.message }} |