You have three options: dots, blocks, and leaders. Most Rhino users use dots. They are made by Dot command. Blocks use attributes made by ConvertTextToBlockAttribute command. Leaders are made by Leader command.
That command is used as one of the steps of making an “Attributed Block”. From Rhino 7, it is possible to store a key-value pair on an instance of a block definition so that the value can vary between instances of the same block definition.
For your callout example, you make a text object with a number and run the command on that text object. You are asked for a key name, an optional prompt, and an optional default value.
In the next step, you select the text object and the circle and run Block on those. You name the block definition and are then prompted to provide a value for that instance. You then have your first instance of that block - likely a “1” with a circle around it.
To create your second callout, you run Insert, select the block definition, give it a value and place it in your document.
The thing that is missing for this feature to work as a callout, is that there tends to be a line from the circle to the object that is referred to. You can include a line in your block definition but that will then always be of the same length and going in the same direction.
That would require some kind of “smart block” - I’ve added the example to item RH-57711.
It doesn’t sound like you are talking about a circle, though. For the sake of completion, and as already been requested by Gijs, please post a picture of what a typical callout looks like in your field of work.