Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into nadeesha/refactor-dem…
Browse files Browse the repository at this point in the history
…o-g64y
  • Loading branch information
nadeesha committed Nov 5, 2024
2 parents 9670224 + 7534f50 commit 66e84d3
Show file tree
Hide file tree
Showing 38 changed files with 1,154 additions and 1,512 deletions.
43 changes: 43 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
version: 2
updates:
- package-ecosystem: "nuget"
directory: "/bootstrap-dotnet"
schedule:
interval: "weekly"
open-pull-requests-limit: 10

- package-ecosystem: "nuget"
directory: "/sdk-dotnet"
schedule:
interval: "weekly"
open-pull-requests-limit: 10

- package-ecosystem: "gomod"
directory: "/bootstrap-go"
schedule:
interval: "weekly"
open-pull-requests-limit: 10

- package-ecosystem: "gomod"
directory: "/sdk-go"
schedule:
interval: "weekly"
open-pull-requests-limit: 10

- package-ecosystem: "npm"
directory: "/bootstrap-node"
schedule:
interval: "weekly"
open-pull-requests-limit: 10

- package-ecosystem: "npm"
directory: "/sdk-node"
schedule:
interval: "weekly"
open-pull-requests-limit: 10

- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
35 changes: 21 additions & 14 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ jobs:
sdk_go: ${{ steps.filter.outputs.sdk_go }}
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Filter changed files
uses: dorny/paths-filter@v2
uses: dorny/paths-filter@v3
id: filter
with:
filters: |
Expand All @@ -50,9 +50,9 @@ jobs:
working-directory: sdk-node
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
Expand All @@ -73,9 +73,9 @@ jobs:
working-directory: sdk-node
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: "npm"
Expand All @@ -100,9 +100,9 @@ jobs:
working-directory: sdk-dotnet
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up .NET
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Restore dependencies
Expand All @@ -121,9 +121,9 @@ jobs:
working-directory: sdk-dotnet
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up .NET
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Restore dependencies
Expand All @@ -146,11 +146,18 @@ jobs:
working-directory: sdk-go
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Check formatting
run: |
if [ "$(gofmt -l . | wc -l)" -gt 0 ]; then
echo "The following files are not formatted correctly:"
gofmt -l .
exit 1
fi
- name: Get dependencies
run: go mod download
- name: Build
Expand All @@ -167,9 +174,9 @@ jobs:
working-directory: sdk-go
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Get dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/create-archives.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ jobs:
bootstrap: ${{ steps.filter.outputs.bootstrap }}
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Filter changed files
uses: dorny/paths-filter@v2
uses: dorny/paths-filter@v3
id: filter
with:
filters: |
Expand Down
49 changes: 0 additions & 49 deletions .github/workflows/create-release.yml

This file was deleted.

61 changes: 48 additions & 13 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@ jobs:
sdk_go: ${{ steps.filter.outputs.sdk_go }}
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Filter changed files
uses: dorny/paths-filter@v2
uses: dorny/paths-filter@v3
id: filter
with:
filters: |
Expand All @@ -47,12 +47,12 @@ jobs:
working-directory: sdk-node
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
Expand All @@ -69,7 +69,7 @@ jobs:
run: |
npm config set //registry.npmjs.org/:_authToken $NPM_TOKEN
version=$(npx release-it --release-version)
npx release-it --npm.skipChecks --git.tagName=sdk-node/${version} --github.release=false
npx release-it --npm.skipChecks --git.tagName=sdk-node/v${version} --no-github.release --git.commitMessage="Bump sdk-node version to ${version}"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
Expand All @@ -85,25 +85,61 @@ jobs:
working-directory: sdk-dotnet
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Restore dependencies
run: dotnet restore
- name: Get and Increment Version
id: increment_version
shell: pwsh
run: |
$projectFile = Get-ChildItem -Path ./src -Filter *.csproj | Select-Object -First 1
if (-not $projectFile) {
throw "No .csproj file found in current directory"
}
$xml = [xml](Get-Content $projectFile.FullName)
$currentVersion = $xml.Project.PropertyGroup.Version
if (-not $currentVersion) {
throw "Version element not found in project file"
}
# Parse version components
$major, $minor, $patch = $currentVersion.Split('.')
$newPatch = [int]$patch + 1
$newVersion = "$major.$minor.$newPatch"
# Update project file
$xml.Project.PropertyGroup.Version = $newVersion
$xml.Save($projectFile.FullName)
# Set output for later steps
echo "new_version=$newVersion" >> $env:GITHUB_OUTPUT
- name: Build
run: dotnet build --configuration Release --no-restore
- name: Pack
run: dotnet pack --configuration Release --no-restore --output ./output
# TODO: Auto version bump
- name: Setup NuGet
uses: nuget/setup-nuget@v1
uses: nuget/setup-nuget@v2
with:
nuget-api-key: ${{ secrets.NUGET_API_KEY }}
nuget-version: latest
- name: Publish
run: dotnet nuget push output\*.nupkg -s https://api.nuget.org/v3/index.json
- name: Commit and push changes
run: |
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git commit -am "Bump sdk-dotnet version to ${{ steps.increment_version.outputs.new_version }}"
git push
- name: Create Git tag
run: |
git tag sdk-dotnet/v${{ steps.increment_version.outputs.new_version }}
git push origin sdk-dotnet/v${{ steps.increment_version.outputs.new_version }}
publish-go:
needs: check_changes
Expand All @@ -117,12 +153,12 @@ jobs:
working-directory: sdk-go
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Go
uses: actions/setup-go@v4
uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Get current version
Expand All @@ -146,8 +182,7 @@ jobs:
run: |
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git add inferable.go
git commit -m "Bump sdk-go version to ${{ steps.increment_version.outputs.new_version }}"
git commit -am "Bump sdk-go version to ${{ steps.increment_version.outputs.new_version }}"
git push
- name: Create Git tag
run: |
Expand Down
30 changes: 14 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,19 @@

# Introduction

Inferable is the developer platform for building agentic automations from your existing code. You bring the code, we bring the automation engine.
Inferable is a developer platform that makes it easy to build and deploy reliable, secure LLM-based applications.

## Key Features

Here's a concise key features section with 5 points highlighting Inferable's main benefits:
🚀 **[2-Minute Setup](https://docs.inferable.ai/pages/quick-start)**: Get started in minutes with our [managed platform](https://app.inferable.ai) - wrap your existing functions, REST APIs and GraphQL endpoints as tools.

🚀 **2-Minute Setup**: Get started in minutes with our [managed platform](https://app.inferable.ai) - wrap your existing functions, REST APIs, GraphQL endpoints, and more.
🤖 **[Managed Agent Runtime](https://docs.inferable.ai/pages/runs)**: Managed [ReAct](https://www.promptingguide.ai/techniques/react)-like agent runtime powered by your own functions.

🔄 **Rapid Iteration**: Built for developers to quickly prototype, test and refine AI automations with instant feedback. If you can write a function, you can build an agent.
⚡️ **[Durable Tool Calling](https://docs.inferable.ai/pages/functions)**: Our durable execution engine helps you agents recover from tool-calling failures, load balance across your compute, and caches results for fast re-runs.

**Distributed Durable Execution**: Our durable execution engine helps you agents recover from partial failures, load balance across your compute, and caches results for fast re-runs.
🛡**[Zero Network Config](https://docs.inferable.ai/pages/no-incoming-connections)**: No inbound connections or networking config required - your compute runs securely behind your firewall, and polls Inferable for instructions.

🛡️ **Zero Network Config**: No inbound connections or networking config required - your compute runs securely behind your firewall, and polls for instructions.

💻 **Your Infrastructure, Your Control**: Keep sensitive data and compute on-premise while leveraging our cloud orchestration. Inferable can't see or access any runtime information or environment variables.
💻 **[Your Infrastructure](https://docs.inferable.ai/pages/on-premise)**: All functions run on your Infrastructure - Keep sensitive data and compute on-premise while leveraging our agent runtime. Inferable can't see or access any runtime information or environment variables.

🔌 **Multiple Language Support**: Native SDKs for TypeScript, Go, .NET and more coming soon - integrate with your existing codebase in minutes.

Expand Down Expand Up @@ -57,14 +55,14 @@ For language-specific quick start guides, please refer to the README in each SDK

### Advanced Features

| Feature | Node.js | Go | .NET |
| --------------------------------------------------------------------- | :-----: | :-: | :--: |
| Create [Blob](https://docs.inferable.ai/pages/functions#blob) results ||||
| [Mask](https://docs.inferable.ai/pages/functions#masked) results ||||
| Caching configuration ||||
| Timeout configuration ||||
| Retry configuration ||||
| Approval (Human in the loop) configuration ||||
| Feature | Node.js | Go | .NET |
| -------------------------------------------------------------------------------------------------------- | :-----: | :-: | :--: |
| [Blob](https://docs.inferable.ai/pages/functions#blob) results ||||
| [Mask](https://docs.inferable.ai/pages/functions#masked) results ||||
| [Cached](https://docs.inferable.ai/pages/functions#config-cache) results ||||
| Call [Timeouts](https://docs.inferable.ai/pages/functions#config-timeoutseconds) ||||
| Call [Retries](https://docs.inferable.ai/pages/functions#config-retrycountonstall) ||||
| Call [Approval](https://docs.inferable.ai/pages/functions#config-requiresapproval) (Human in the loop) ||||

## Documentation

Expand Down
2 changes: 1 addition & 1 deletion bootstrap-go/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ module github.com/inferablehq/inferable/bootstrap-go
go 1.23.2

require (
github.com/inferablehq/inferable/sdk-go v0.1.25
github.com/inferablehq/inferable/sdk-go v0.1.26
github.com/joho/godotenv v1.5.1
)

Expand Down
Loading

0 comments on commit 66e84d3

Please sign in to comment.