41 lines
1.2 KiB
PowerShell
41 lines
1.2 KiB
PowerShell
$NumThreads = 10
|
|
|
|
$runspacePool = [runspacefactory]::CreateRunspacePool(1, $NumThreads)
|
|
$runspacePool.Open()
|
|
$runspaces = @()
|
|
|
|
$headers = @{
|
|
"Authorization" = "Bearer test"
|
|
"anthropic-version" = "2023-01-01"
|
|
"Content-Type" = "application/json"
|
|
}
|
|
|
|
$payload = @{
|
|
model = "claude-v2"
|
|
max_tokens_to_sample = 40
|
|
temperature = 0
|
|
stream = $true
|
|
prompt = "Test prompt, please reply with lorem ipsum`n`n:Assistant:"
|
|
} | ConvertTo-Json
|
|
|
|
for ($i = 1; $i -le $NumThreads; $i++) {
|
|
Write-Host "Starting thread $i"
|
|
$runspace = [powershell]::Create()
|
|
$runspace.AddScript({
|
|
param($i, $headers, $payload)
|
|
$response = Invoke-WebRequest -Uri "http://localhost:7860/proxy/aws/claude/v1/complete" -Method Post -Headers $headers -Body $payload
|
|
Write-Host "Response from server: $($response.StatusCode)"
|
|
}).AddArgument($i).AddArgument($headers).AddArgument($payload)
|
|
|
|
$runspace.RunspacePool = $runspacePool
|
|
$runspaces += [PSCustomObject]@{ Pipe = $runspace; Status = $runspace.BeginInvoke() }
|
|
}
|
|
|
|
$runspaces | ForEach-Object {
|
|
$_.Pipe.EndInvoke($_.Status)
|
|
$_.Pipe.Dispose()
|
|
}
|
|
|
|
$runspacePool.Close()
|
|
$runspacePool.Dispose()
|