chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
// Copyright (c) Microsoft. All rights reserved.
|
||||
|
||||
using System.ComponentModel;
|
||||
using Microsoft.SemanticKernel;
|
||||
|
||||
namespace OllamaFunctionCalling;
|
||||
|
||||
/// <summary>
|
||||
/// Class that represents a controllable alarm.
|
||||
/// </summary>
|
||||
public class MyAlarmPlugin
|
||||
{
|
||||
private string _hour;
|
||||
|
||||
public MyAlarmPlugin(string providedHour)
|
||||
{
|
||||
this._hour = providedHour;
|
||||
}
|
||||
|
||||
[KernelFunction, Description("Sets an alarm at the provided time")]
|
||||
public string SetAlarm(string time)
|
||||
{
|
||||
this._hour = time;
|
||||
return GetCurrentAlarm();
|
||||
}
|
||||
|
||||
[KernelFunction, Description("Get current alarm set")]
|
||||
public string GetCurrentAlarm()
|
||||
{
|
||||
return $"Alarm set for {_hour}";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
// Copyright (c) Microsoft. All rights reserved.
|
||||
|
||||
using System.ComponentModel;
|
||||
using Microsoft.SemanticKernel;
|
||||
|
||||
namespace OllamaFunctionCalling;
|
||||
|
||||
/// <summary>
|
||||
/// Class that represents a controllable light bulb.
|
||||
/// </summary>
|
||||
[Description("Represents a light bulb")]
|
||||
public class MyLightPlugin(bool turnedOn = false)
|
||||
{
|
||||
private bool _turnedOn = turnedOn;
|
||||
|
||||
[KernelFunction, Description("Returns whether this light is on")]
|
||||
public bool IsTurnedOn() => _turnedOn;
|
||||
|
||||
[KernelFunction, Description("Turn on this light")]
|
||||
public void TurnOn() => _turnedOn = true;
|
||||
|
||||
[KernelFunction, Description("Turn off this light")]
|
||||
public void TurnOff() => _turnedOn = false;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
// Copyright (c) Microsoft. All rights reserved.
|
||||
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using Microsoft.SemanticKernel;
|
||||
|
||||
namespace OllamaFunctionCalling;
|
||||
|
||||
/// <summary>
|
||||
/// Simple plugin that just returns the time.
|
||||
/// </summary>
|
||||
public class MyTimePlugin
|
||||
{
|
||||
[KernelFunction, Description("Get the current time")]
|
||||
public DateTimeOffset Time() => DateTimeOffset.Now;
|
||||
}
|
||||
Reference in New Issue
Block a user